用sizeof计算字符串是会包括 \0 一起计算的
char a[]="abc"; 默认包含\0,只是不显示。
char b[]={'a','b','c'};是不包含\0的,但里面如果写了'\0'也得在\0处停止
#include <stdio.h>
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;
}