首页 > 代码库 > C++ char和string

C++ char和string

CPU的标识

ILP32:Windows X86  int long point 32位= 4个字节

LP64: X86_64  long point 64位 = 8个字节

char和string的存储区别

1. char 是标准C语言类型, 优点:基础类型,结构单一,速度快,拷贝快,因为不是基于new和delete的,是原始数据类型。大多方法需要程序员自己实现。

2.string是C++类型(stl成员之一),string类型是对char数组的封装,并且提供了一系列很好用的方法。优点:灵活,方便,方法多。基于new和delete,在构造、析构时会耗费时间。

 

char类型数组的概念,char占用1个Byte=8个bit,如果是数组,必定是‘\0‘结束,否则容易溢出。

char uOne = ‘a‘;    // 97

char  szUID[5] = {‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘\0‘};

memset(szUID, 0, sizeof(szUID));

strcpy(szUID, "abcde"); //会core

a
b
c
d
e
\0

 

strncpy(szUID, abcd, 5); //正确