反斜杠起到换行作用,用于宏定义和字符串换行。其中宏定义中使用居多。

在写代码的时候遇到代码超长的情况下为了代码的美观及方便测试,可以通过在结尾加\的方式,实现换行,编译时编译器会忽略\及其后的换行符,当做一行处理。

1、在宏定义中要换行必须使用  \  结尾

比如:

#define PI \
   3.1415926

 

2、在字符常量中可以使用   \  结尾

比如:

"hello \
 world"

 和"hello  world"是相同的

3、在普通语句中,也可以使用  \  来换行,不过这时有没有  \  都可以,没有影响

比如

s=PI*r*r,\
	l=2*PI*r;//1

s=PI*r*r,     
	l=2*PI*r;//2  
	
s=PI*r*r;
l=2*PI*r;        //3 这三种方法一样,都可以运行,没有区别

举一个简单的例子:

#include<stdio.h>
#include<string.h>

#define PI  \
	3.1415926

int main()
{
	double r=10,s,l;
	char a[111]="hello\
					   world";
	s=PI*r*r,\
		l=2*PI*r;//1

	s=PI*r*r,     
		l=2*PI*r;//2  
	
	s=PI*r*r;
	l=2*PI*r;    //3 这三种方法一样,都可以运行,没有区别

	printf("%.2lf %.2lf\n",s,l);

	printf("%s",a);//前面的换行会导致输出的结果中间有很大的空格

	printf("\n");
	return 0;
}

结果为:


4、另外,(+ - * / % = , | & ^ ~ || && == !=)以及括号等,均能作为换行符号。换行的字符串最后,添加双引号,下一行开头也加上双引号就可以。
如:
strcpy(buf, "123456 "
"abcd");
上述示例等同于:
strcpy(buf, "123456abcd ");

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐