在linux下,vim hello.c以后打开我们的命令模式,按i我们进入插入模式,然后编辑以下文本,编辑好以后按shift + ;,进入底行模式,输入wq保存退出(只输入q是退出并不保存)
#include<stdio.h>
#define MAOMAO "maomao\n"
//zhuhshi
/*zhushi*/
int main()
{
#pragma warning("normal err")
#if 0
printf("hello\n");
#else
printf(maomao);
#endif
}
一,预处理(进行宏替换)
[root@localhost a]# gcc hello.c -E -o hello.i
[root@localhost a]# vim test.i
-E 选项的作用是让gcc在预处理结束后停止编译过程。
-o 是指目标文件,“i”文件为已经预处理的c原始程序
预处理阶段的功能:
1)将所有的#define删除,并展开所有的宏定义。
2)处理所有的预处理指令,比如#if,#elif,#else,#endif,#ifdef。
3)处理#include预编译指令,将被包含的文件插入到预处理指令的位置,这个过程是递归的。