权力的游戏第七季衣柜:c语言问题

来源:百度文库 编辑:神马品牌网 时间:2024/04/30 23:01:59
char sp[]="\t\v\\\0will\n";
printf("%d",strlen(sp));
这里长度为啥得3,不明白

sp里的字符依次是\t,\v,\\,\0,w,i,l,l,\n。
\t是水平制表符;
\v是垂直制表符;
\\就是\;
\0是字符串结束符;
C语言里以\0来表示字符串的结束,所以\t\v\\\0构成了一个字符串,而strlen计算字符串长度时是不把\0算在内的,所以长度为3。

呵,在C语言中!\为反义符号,\\才是表示字符 '\'
而'\t'表示跳格符,而 \0 则为字符串的结束标志,所以该字符串到此结束!也就是说,char sp[]的长度只算了 \t\v\\\0

因为碰到了\0,你要这样用
char sp[]="\t\v\\0will\n";