sizeof
sizeof是单目操作符,sizeof计算变量所栈内存空间大小,单位是字节,如果操作数是类型的话,会计算类型所占大小,sizeof指在乎占用内存空间大小不在乎内容是什么.
代码语言:javascript复制int main()
{
int a = 0;
printf("%zdn", sizeof(a));
printf("%zdn", sizeof a );
printf("%zdn", sizeof(int));
}
strlen
strlen是库函数,功能是求字符串长度,需要string.h的头文件
代码语言:javascript复制size_t strlen( const char * str);
这个是针对于字符串的,只求字符串长度
代码语言:javascript复制int main()
{
int len = strlen("abcdef");
printf("%d", len);
}
或者
代码语言:javascript复制int main()
{
const char* str = "abcdef";
printf("%zdn", strlen(str));
}
又或者
代码语言:javascript复制int main()
{
char str[] = "abcdef";
printf("%zdn", strlen(str));
}
但要注意不能这样使用,除非你手动在末尾输入
代码语言:javascript复制int main()
{
char str[] = {'a','b','c'};
printf("%zdn", strlen(str));
}
注意根据strlen的性质,它计算到 之前的长度