c语言-注释

“注释”是字符序列由编译器将一个空白字符和否则将忽略的一个正斜杠/星号组合 (/*) 开头。 注释可以包括任何字符组合可以从可用的字符集的,包括换行符,但是,排除 “结束注释”分隔符 (*)。 注释占用多个行,但不能嵌套。

注释可以显示任何位置空白字符授权。 因为编译器将注释作为一个空白字符,不能包括在标记中的注释。 编译器忽略在注释的字符。

使用文档注释代码。 此示例是编译器接受的注释:

 
 
/* Comments can contain keywords such as
   for and while without generating errors. */

注释可以出现在行和代码语句相同:

 
 
printf( "Hello\n" );  /* Comments can go here */

可以选择在函数或具有描述性注释的程序模块块:

 
 
/* MATHERR.C illustrates writing an error routine 
 * for math functions. 
 */ 

因为注释不能包含嵌套的注释,此示例导致错误:

 
 
/* Comment out this routine for testing 

   /* Open file */
    fh = _open( "myfile.c", _O_RDONLY );
    .
    .
    .
 */

,因为编译器在运行 Open file后识别第一 */,,作为注释,结束该错误。 ,当找到在注释时,的 */ 它尝试处理剩余的文本会产生错误。

可以使用注释仅为测试目的时使某些代码行非活动,预处理器指令 #if 和 #endif 和条件编译。此任务的有用的替代方法。 有关更多信息,请参见 " 预处理器的预处理器指令引用

Microsoft 专用

Microsoft 编译器还支持两个正斜杠的单行注释 (//) 之后。 如果使用 /Za 编译。 (ANSI 标准),这些注释生成错误。 这些注释不能扩展到第二行。

 
 
// This is a valid comment

从两个正斜杠 (//) 开头的注释由一个不在转义字符后面的下一个换行符停止。 在下一个示例中,换行符的反斜杠 (\) 之后,创建 “转义序列”。为上一行的一部分,此转义序列导致编译器将下一行。 (有关更多信息,请参见 转义序列。)

 
 
// my comment \
    i++; 

因此, i++; 语句批注。

Microsoft C 的默认值为 Microsoft 扩展启用。 使用 /Za 禁用这些扩展。

 

引:http://msdn.microsoft.com/zh-CN/library/vstudio/wfwda74e.aspx

posted @ 2014-02-26 13:24  landv  阅读(1157)  评论(0编辑  收藏  举报