关于sizeof的浅显理解
总是对于sizeof和strlen有一种说不完的感觉,今天突然又看到了,就把他们在见识见识。
这是我写的一个程序
#include<stdio.h>
#include<string.h>
int main(void)
{
char a[]="abcd";
char b[]="\0abcd";
printf("%d\n",sizeof(a));//5
printf("%d\n",sizeof(b));//6
printf("%d\n",strlen(a));//4
printf("%d\n",strlen(b));//0
return 0;
}
结果是:5 6 4 0
我们可以看到什么呢,我们大家以前都知道sizeof是要包含最后一个\0(隐式存在)
,strlen是不需要的,但是strlen遇到\0是要退出的, 就是各有利弊,需要我们以后多多注意,想分享的完了。。。。。