当这一行代码出现在一个文件中时,在该文件中后续出现的所有宏都将会在程序编译之前被替换为 replacement-text。例如:
#include<iostream>usingnamespacestd; #definePI3.14159intmain(){ cout << "Value of PI :" << PI << endl; return0;}
现在,让我们测试这段代码,看看预处理的结果。假设源代码文件已经存在,接下来使用 -E 选项进行编译,并把结果重定向到 test.p。现在,如果您查看 test.p 文件,将会看到它已经包含大量的信息,而且在文件底部的值被改为如下:
$ gcc -E test.cpp > test.p
...
int main ()
{
cout <<"Value of PI :"<<3.14159<< endl;
return0;
}