打赏

C 长字符串换行方法

   C中字符串有时候会出现很长的情况,如果不换行书写查看起来很不方便。

   长字符串拆分成多行处理也是C规范的一部分。

方法1. 利用双引号" " ,将长字符串分成多个子串换行,C会自动无缝拼接这些字符串。

 

方法2. 利用斜杠 \ , \ 后的换行符会被C忽略,所以可以拆分字符串,但是下一行的空格会被计算在内,可能导致错误。

 

  上个例子大家对比下就明白了!

 1 int main()
 2 {
 3 
 4     char s1[50] , s2[50];
 5     int slen=0;
 6     slen = snprintf(s1, sizeof(s1), "qwe"
 7                     "asd"
 8                     "zxc");
 9     printf("slen=%d, s1=%s \n", slen, s1);
10 
11     slen = snprintf(s2, sizeof(s2), "qwe\
12                     asd\
13                     zxc");
14     printf("slen=%d, s2=%s \n", slen, s2);
15 
16     return 0;
17 }

说明:s1只增加了9个字符,很完美

   s2却增加了49个字符,加了很多无用的空格,使用不太安全!

综上,对长字符串的换行还是用双引号更安全!

 

posted @ 2018-02-08 22:49  巴尔扎克_S  阅读(13911)  评论(0编辑  收藏  举报