20131012宏定义的补充说明
2013-10-12 00:36
274 查看
对于宏定义还要说明以下几点:
1. 宏定义是用宏名来表示一个字符串,在宏展开时又以该字符串取代宏名,这只是一种简单的代换,字符串中可以含任何字符,可以是常数,也可以是表达式,预处理程
序对它不作任何检查。如有错误,只能在编译已被宏展开后的源程序时发现。
2. 宏定义不是说明或语句,在行末不必加分号,如加上分号则连分号也一起置换。
3. 宏定义必须写在函数之外,其作用域为宏定义命令起到源程序结束。如要终止其作
用域可使用#undef命令。
4.#define 条件编译头文件(.h)可以被头文件或C文件包含;
重复包含(重复定义)由于头文件包含可以嵌套,那么C文件就有可能包含多次同一个头文件,
就可能出现重复定义的问题的。通过条件编译开关来避免重复包含(重复定义)
例如
#ifndef __headerfileXXX__
#define __headerfileXXX__ „ 文件内容„
#endif
相关文章推荐
- 关于不明白的宏定义,补充说明,请帮忙分析,解答。
- FreeTextBox 1.6.3 中文版使用说明(后加关于图片设置的补充)
- sourcesafe管理phpproj文件的补充说明(downmoon)
- 第一次作业的补充说明
- (总结)数据结构之链表的基本操作说明和示例(待补充)
- Postman使用说明补充
- word2vec使用说明补充(google工具包)
- JAR包文件说明文档(补充中....)
- SampleBrowserPlugin的补充说明
- InstallShield 定制皮肤的补充说明
- 结构体内存对齐的补充说明与总结
- Java中的反射机制(五) 关于Class类的补充说明
- 一个“灵异”批处理引发的思考加补充说明
- BeanNameAutoProxy补充说明[重要]
- 关于分页写法的性能分析及ROWNUM的补充说明
- .Net Web项目安装包制作(三)补充说明
- SpringMVC拦截器2(资源和权限管理)(作为补充说明)
- 对 Oracle 备份与恢复 的补充说明
- SqlHelper类说明【补充】
- 高效的数据库连接池 补充说明以及升级说明