/*字符串长度——sizeof与strlen——转译字符*/
#include <stdio.h>
#include <string.h>
int main()
{
char buff0[]="qwerqwer";
printf("buff0:size=%d,strlen=%d\n",sizeof(buff0)/sizeof(buff0[0]),strlen(buff0));
char buff1[]="qwer\nqwer";
printf("buff1:size=%d,strlen=%d\n",sizeof(buff1)/sizeof(buff1[0]),strlen(buff1));
char buff2[]="qwerqwer\0";
printf("buff2:size=%d,strlen=%d\n",sizeof(buff2)/sizeof(buff2[0]),strlen(buff2));
}
/*编译结果:
buff0:size=9,strlen=8
buff1:size=10,strlen=9
buff2:size=10,strlen=8
*/
//总结:strlen计算字符串的有效长度,转译字符'\n'算一个字符且不计算'\0'。
//sizeof计算类型所占字节大小,转译字符'\n'算一个字符且计算'\0'。