C语言中三种大括号格式的规范

C语言中三种大括号格式的规范

C语言中三种大括号格式的使用规范

简介:

在C中,使用大括号的方法无所谓对还是错——只要每个开括号后都有一个闭括号,你的程序中就不再会出现与大括号有关的问题。然而,有三种著名的大括号格式:Kernighan和Ritchie,Allman,Whitesmiths经常被使用:

1. Kernighan和Ritchie格式 (Kb&R格式)

在《C程序设计语言(The C Programming Language)》一书中,Brian Kernighan和Dennis Ritchie介绍了他们所使用的大括号格式,这种格式如下所示:

if (argc<3) {

printf (" Error! Not enough arguments. Correct usage is ..\n" ) ;

printf("c:>eopyfile \n") ;

exit (1) ;

}

else {

open_files () ;

while (! feof(infile)) {

read_data ( ) ;

write_data() ;

}

close files() ;

}

注意,在Kb&R格式中,开括号总是与使用它的语句在同一行上,而闭括号总是在它所关闭的语句的下一行上,并且与该语句对齐。例如,在上例中,if语句的开括号和它在同一行上,|f语句的闭括号在它的下一行上,并且与它对齐。在与if语句对应的else条件语句以及出现在程序段后部的while语句中,情况也是这样的。

2. Allman格式

if (argc<3)

{

printf("Error! Not enough arguments. Correct usage is :\n" ) ;

printf("C:>copyfile \n") ;

exit(1);

}

else

{

open_files ( );

while (! feof(infile))

{

read_data ( ) ;

write data();

}

close_files() ;

}

注意,在Allman格式中,每个大括号都单独成行,并且开括号和闭括号都与使用它们的语句对齐。

3.Whitesmiths格式

if (argc<3)

{

printf("Error! Not enough arguments, Correct usage is :\n" );

printf ("C :> copyfile\n." ) ;

exit(1);

}

else

{

open files () ;

while (! feof(infile))

{

read_data() ;

write data();

}

close files () ;

}

与Allman格式相同,Whitesmiths格式也要求大括号单独成行,但是它们要和它们所包含的语句对齐。例如,在上例中,if语句的开括号是与第一个printf()函数调用对齐的。

总结:不管你使用哪一种格式,一定要保持前后一致——这将有助于你自己或其它人更方便地读你的程序。

还有需要注意的是,很多编程软件是会“自动对齐”的

转载:https://developer.aliyun.com/article/598037

相关推荐