转载:https://blog.csdn.net/baiqishijkh/article/details/79236202

在C语言程序编写中,我们有时会遇到一行代码太长而影响阅读或者出现与部分公司或组织要求的编码规范不符的情况,此时我们需要将这行代码分成多行来写。

一、针对一般语句换行
使用\结尾作为换行标记
在编译时,\后面的换行符将被忽略,当做一行处理。比如宏定义时使用
#define my_puts(x) printf("%s", \
x);
和写作
#define my_puts(x) printf("%s",x);
是没区别的。

针对宏定义中换行,换行符\必不可少。针对执行语句的换行,我们同样可以使用\作为换行符,同事当一个语句过长时,直接换行,也并不会影响语句的编译
if(NULL != input\
&& TRUE == input->state)

if(NULL != input
&& TRUE == input->state)
相同,它们所表达的都是
if(NULL != input && TRUE == input->state)

二、针对字符串换行
当字符串过长,写在一行中阅读不便时,我们也可以采用\作为换行标识符
printf("Hello \
world\n");
但是此时使用\作为换行标识符时,需要注意换行后的内容顶格写,如果采取缩进方式的话,开头的空格也会被计算进字符串中
printf("Hello \
world\n")
此处我们在stdout输出的将会是:Hello world 也就是会将world前面的空格计入字符串中去。

很多情况下,我们使用缩进是为了便于代码阅读,针对上述的字符串换行,我们可以采用另外的方式处理
注:C语言规定,连续的用""引起的字符串常量,会默认合并为一个常量字符串

所以在字符串换行处理时,我们可以使用""
printf("Hello "
"world\n");

printf("Hello world");相同。使用""处理方式,我们就可以不用考虑未顶格时的空格会被计入字符串了,可以放心的使用缩进而不至于造成程序代码的误解。
---------------------
作者:baiqishijkh
来源:CSDN
原文:https://blog.csdn.net/baiqishijkh/article/details/79236202
版权声明:本文为博主原创文章,转载请附上博文链接!

C语言一行太长的换行处理的更多相关文章

  1. matlab一行太长

    太长了,一行写不下,所以用...接下一行 例子: x=[ mvnrnd( mu_real(:,1) , cov_real(:,:,1) , round(N*a_real(1)) )' ,... mvn ...

  2. C语言一行语句太长的换行处理方法

    [toc] 1.C语言中代码的多行书写 对C语言初学者来说,编写的程序的功能很简单,一句代码很短,但是在实际开发中,参数往往很长很多,一句代码可能会很长,需要用多行才能书写. 如果我们在一行代码的行尾 ...

  3. 【我的Android进阶之旅】Android Studio查看Logcat时,如果一行Log太长如何换行显示?

    使用Android Studio一段时间了,还有很多小技巧没有掌握.今天又发现了一个比较好用的小技巧,这里分享出来. 1.Android Studio默认显示效果 比如我们用Logcat来查看打印的L ...

  4. 关于table表格td里内容是数字而且太长不换行的问题

    <p>table{table-layout:fixed}</p><p>table td{word-wrap:break-word}</p><p&g ...

  5. JS拼接字符串太长希望换行保持html格式拼接的方法

    1. 通常情况 tabPeoStr +='<tr class="tabPeo"><td>'+data[i].name+'</td><td& ...

  6. Echarts 折线图y轴标签值太长时显示不全的解决办法

    问题 分析 解决办法 问题 先看一下正常的情况 再看一下显示不全的情况 所有的数据都是从后台取的,也就是说动态变化的,一开始的时候数据量不大不会出现问题,后面y轴的值越来越大的时候就出现了这个显示不全 ...

  7. C语言中一个语句太长用什么换行?

     C语言中一个语句太长用什么换行? 5 C语言中一个语句太长用什么换行?比如我有一个printf语句很长很长,问了美观,我不想写在这一行了,要换到下一行,是不是在这行结尾的时候,要用个什么标识来表 ...

  8. 文件操作之增删改查3---文件的修改,f.replace(),在linux里的一些应用sed,with语句方法来打开一个或多个文件避免忘记关闭,python一行写的太长,怎么编写多行的规范

    f.replace()with open("xxx","r",encoding="utf-8") as f: 想修改文件中间的数据,有两个办 ...

  9. python入门2 python字符串换行显示、字符串太长\连接多行

    #coding:utf-8 #/usr/bin/python """ 2018-11-03 dinghanhua 缩进 换行 """ &qu ...

随机推荐

  1. 单链表之Java实现

    初次接触java,用java也写了一个链表.代码如下: import java.io.*; class Node{ public int data; //数据域 public Node next; / ...

  2. 对AM信号FFT的matlab仿真

    普通调幅波AM的频谱,大信号包络检波频谱分析 u(t)=Ucm(1+macos t)cos ct ma称为调幅系数 它的频谱由载波,上下边频组成 , 包络检波中二极管截去负半周再用电容低通滤波,可 ...

  3. [笔记]C++拷贝构造和移动构造

    一.拷贝构造 如果一个构造函数的第一个参数是自身类类型的引用,且任何额外参数都没有默认值,则此构造函数是拷贝构造函数.(<C++Primer,第五版>) class Foo { publi ...

  4. LVS之NAT模式

    目录: 网络环境 LVS服务器配置 LVS服务器添加ipvs规则 RS服务器配置 访问验证 抓包分析 注意事项 [网络环境] 服务器类型 IP 说明 lvs_vip 192.168.2.130 vip ...

  5. Docker小记

    1.Docker的安装 这里给一个比较通用的教程 Ubuntu 14.04 16.04 (使用apt-get进行安装) # step : 安装必要的一些系统工具 sudo apt-get update ...

  6. Python接口测试-利用登录后的session用到登录后的接口中

    有些接口是在登录后才能调用的,例如“立即出借”只有在登录后才能到出借窗口,解决: 主要是添加了: s =requests.session() 完整代码: '''登录 ''' print('*'*100 ...

  7. Centos7.4.1708搭建syslog服务

    系统:centos7.4.1708环境:无互联网环境syslog使用端口为 UDP 514 将/etc/yum.repos.d目录下除CentOS-Media.repo文件所有文件重命名cd /etc ...

  8. 更改mysql 数据库 utf8

    mysql> alter database 数据库名 character set utf8;

  9. [PySpark] Spark SQL on a large file

    基础篇:[Spark] 03 - Spark SQL /* implement */

  10. React Native创建项目等待时间长解决

    1. 初始化工程 在终端输入命令 :react-native init AwesomeProject 从命令上看,看起来是初始化一个工程,于是, 1分钟...... 10分钟...... 1小时... ...