一、说明
C中字符串有时候会出现很长的情况,如果不换行书写查看起来很不方便。长字符串拆分成多行处理也是C规范的一部分。
二、方法
方法1. 利用双引号" " ,将长字符串分成多个子串换行,C会自动无缝拼接这些字符串。
方法2. 利用斜杠 \ , \ 后的换行符会被C忽略,所以可以拆分字符串,但是下一行的空格会被计算在内,可能导致错误。
三、例子
int main()
{
char s1[50] , s2[50];
int slen=0;
slen = snprintf(s1, sizeof(s1), "qwe"
"asd"
"zxc");
printf("slen=%d, s1=%s \n", slen, s1);
slen = snprintf(s2, sizeof(s2), "qwe\
asd\
zxc");
printf("slen=%d, s2=%s \n", slen, s2);
return 0;
}
(1)s1只增加了9个字符,很完美。
(2)s2却增加了49个字符,加了很多无用的空格,使用不太安全!
(3)综上,对长字符串的换行还是用双引号更安全!