先看下面的程序
int main(){
char *ch = "hwlhwl";
char ch1[] = "hwlhwl";
unsigned int a = sizeof(ch);
unsigned int b = strlen(ch);
unsigned int c = sizeof(ch1);
unsigned int d = strlen(ch1);
cout<<a<<endl<<b<<endl;
cout<<c<<endl<<d<<endl;
system("pause");
return 0;
}
输出结果是多少呢?
输出:4,6,7,6
从结果不难看出strlen是计算字符串(只能是结尾为\0的字符串)中字符的个数。切只能在字符串中使用,是一个函数。他计算只算字符的复数把包含“\0”.
sizeof是一个操作符,他是计算ch在内存中占了几个字节。4是指针ch所占的字体,7(6+1)是字符数组ch所占的字节。
ch和ch1的差别