sizeof 获得的是一个指针的之所占的空间,应该是长整型的,所以是4,如:
char *p="abcdef";
sizeof(p) = 4;
strlen(p) = 6;
sizeof 计算的是分配的数组 所占的内存空间的大小,不受里面存储的内容改变,如:
char a[5] = "abc";
sizeof(a) = 5;
strlen(a) = 3;
sizeof计算字符串长度时计算所有字符个数(结束符也算范围内),“\0”“\n”都算一个字符。 如:
char b[] = "abc";
sizeof(a) =4;
strlen(a) = 3; |
|