1.Strlen()只是用来求字符串类型的常变量数组等的长度.只能用来求string类型。
2.sizeof()用来求常变量数组等在内存中占的空间大小,即字节数。
因为char类型变量一个字母占1字节,所以有时候二者计算结果相同,但有时候并不相同。如:
char str[10]="itcast";
int a=strlen(str); //结果 a=6; 因为有6个字符。
int b=sizeof(str); //结果 b=10; 因为数组大小为10,而一个字符占的字节为1,所以b = 10*1 =10.
综上,如果你要求字符串的长度,用strlen();如果你的目的是看这个常变量占的内存,用sizeof()。 |