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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序员互动联盟

【答疑释惑】java中的全局变量

首先,java中是没有全局变量这个概念的,java程序中不能像C++那样在类外定义全局变量,因为JAVA当初出现的初衷就是为了安全性和跨平台性,所以去掉了类似C...

458110
来自专栏精讲JAVA

OutOfMemoryError异常系列之方法区溢出

继续上一篇文章讲解,在上一篇中给大家留下了一个小问题,就是在jdk1.6中返回的是两个false,在jdk1.7中返回的是true false,,上一次代码没有...

38580
来自专栏乐百川的学习频道

设计模式(二十三) 模板模式

模板模式也是一种行为型模式,而且它非常好理解。当我们解决问题需要固定几个步骤, 这些步骤的顺序不能改变,而步骤的具体实现可以变化的时候,就可以使用模板模式。模板...

17860
来自专栏用户2442861的专栏

《Java虚拟机原理图解》 1.1、class文件基本组织结构

http://blog.csdn.net/luanlouis/article/details/39892027

13020
来自专栏Java技术栈

设计模式之动态代理模式实战

昨天分享了静态代理的概念及存在的缺点,所以今天讲的动态代理模式十分重要。动态代理在我们工作当中应用相当广泛,如Srping AOP就是动态代理的在开源框架的比较...

35740
来自专栏前端杂货铺

内置对象,原生对象和宿主对象

js内置对象是ECMAScript规范中要求实现的一些函数和对象,具体包括Object,Function,Number,Boolean,Array, Strin...

31050
来自专栏重庆的技术分享区

AngularJs指令解密

17970
来自专栏学习有记

Python traceback 获取详细的异常信息

13950
来自专栏IMWeb前端团队

Promise接口实现之jQuery 的deferred对象

本文作者:IMWeb json 原文出处:IMWeb社区 未经同意,禁止转载 Promise是什么? 我们知道JavaScript是单线程,如果遇到某...

206100
来自专栏java一日一条

【Java并发编程】使用wait/notify/notifyAll实现线程间通信的几点重要说明

在 Java中,可以通过配合调用Object对象的wait()方法和notify()方法或notifyAll()方法来实现线程间的通信。在线程中调用 wait(...

10330

扫码关注云+社区

领取腾讯云代金券