您的位置:首页 > 其它

预处理命令

2016-06-15 15:02 246 查看
预处理:通常的编译处理之前,编译程序对程序进行预处理

一、符号# ,##

1.# 是预处理标识符

可以将后面的参数化成字符串

#define PASET(n) "abcdefd"#n

int main()

{

  printf("%s",PASET(15));//输出abcdefd15

}

2.##字符串的链接

#define NUM(a,b,c) a##b##c

int main()

{

  printf("%d",NUM(1,2,3));//输出123

}

二、常见的预处理命令

1.#define PI 3.1415926 定义变量

#undef PI 撤销定义变量

2.条件预处理,

1) #if MAX>99 控制程序编译的部分

printf("1234");

#else

printf"abcd\n");

#endif

2)#ifdef 如果定义了标识符

#else否则

#endif

3)#ifndef 如果没定义了标识符

#else否则

#endif

三.include 包含头文件

四.#line 修改行号和原文件的名字

#line 2 “8.cpp"

printf("line ID :%d,FILENAME %s",_LINE_ ,_FILE_);

五、其他

1.#error 强制编译程序停止编译,给出提示信息

#error DOS OS isrequired

2.#pragma 参数

1)message 输出一些信息 #pragma message("the OS is windows 2007");

2)argsused 用于函数定义之间,只影响下一个函数,使得警告信息无效

3)startup,exit 设置程序启动之前和结束后要执行的函数

4)once 仅编译一次头文件

5)warning 设定显示警告信息

6)code_seg指定函数存放的代码段,data_seg 指定数据存放的代码段

7)resource 将制定的文件加入工程中

8)saveregs 保证调用huge()命令时不会改变任何寄存器的值

9)hdrstop结束预编译头文件列表

10)hdrfile 保存预编译头文件的文件的名字
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: