加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

C/C++中的预处理命令

(2010-12-21 09:57:45)
标签:

c/c

预处理

宏定义

条件编译

it

分类: 编程经验--积跬步至千里
#if !defined(__cplusplus)
#error C++ compiler required.
#endif
__cplusplus变量只在编译一个C++程序时定义
如果没有定义,#error输出编译器错误信息"C++ compiler required"

#define to_string(s) #s
在宏定义中,#将后面的文本加上双引号

#define concatenate(x,y) x##y
在宏定义中,##将前后文本连接

#if expression
#ifdef macro
#ifndef macro
#else
可对应上面的宏或者表达式
#elif expression
#endif
这些命令让编译器进行简单的逻辑控制

#include<filename>
本命令包含一个文件并在当前位置插入。

#line line_number "filename"
改变变量__LINE__和__FILE__的值。他们分别表示正在处理的当前行和当前文件。

#pragma para
最复杂的预处理命令,详见百度百科#pragma http://baike.baidu.com/view/1451188.htm

#undef macro
取消一个先前定义的宏变量

预定义变量:
__LINE__ 正在处理的行号
__FILE__ 正在处理的文件名
__DATE__ 当前日期,格式为month/day/year
__TIME__ 当前时间,格式为hour:minute:second
__cplusplus编译一个C++程序时定义
__STDC__ 编译一个C程序时定义,编译C++时也可能定义

0

阅读 收藏 喜欢 打印举报/Report
后一篇:玩转谷歌!
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有