backslash-newline 续行符 与 自由格式

C语言是自由格式语言,在很多情况下,可以自由进行换行。如下:

 #include <stdio.h>
 #define NUM(x) \
		 ( \
		  x*x \
		 )
 int 
 main
 (
 void
 )
 {
	 char 
	 a
	 [
	 10
	 ] 
	 = 
	 "hello";
	 int t = NUM(3);
	 printf("%d\n", t);
	 printf
	 (
	 "%s"
	 "\n", 
	 a);
	 return  
	 0
	 ;
 }

a[10]竟然也可以拆开!当然不能把常量或者标示符拆开。运行结果如下:

image

在宏中使用续行的时候,在续行符之后要直接进行换行,否则会发生错误,而在续行符之前却没有特别的规定。

printf当中字符串进行换行的话,最好使用“A”"B”使换行的两个字符串进行链接。如果使用续行符,那么要使用一下格式:

#include <stdio.h>
int main( void)
{
	 printf("hello,\
world\n");
	 printf("hello,\
			world\n");
	 return 0;
}

第二个printf下面的world之前的空格也将会被加入字符串而后进行输出。结果如下

image

posted @ 2012-01-24 14:29  universe.ini  阅读(436)  评论(0编辑  收藏  举报