用sizeof去计算字符串

用sizeof计算字符串是会包括 \0 一起计算的

char a[]="abc"; 默认包含\0,只是不显示。

char b[]={'a','b','c'};是不包含\0的,但里面如果写了'\0'也得在\0处停止

#include 
int main()
{
    char a[] = "abc", b[] = { 'a','b','c' };
    int sz1 = sizeof a / sizeof a[0];//sizeof计算字符串大小包括了\0
    int sz2 = sizeof b / sizeof b[0];
    printf("%d %d", sz1, sz2);//4和3
    return 0;
}

 

你可能感兴趣的:(算法,c语言)