码迷,mamicode.com
首页 > 其他好文 > 详细

#define(宏替换)以及如何打开预编译之后的“.i”文件看宏的本质

时间:2015-03-21 09:55:56      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:   .i文件   预编译   c++   

<span style="font-size:24px;">#include<stdio.h>
#include<iostream.h>

#define PI 3.14    
/*
<span style="color:#ff0000;">PI是符号常量,不开辟空间,只是个临时符号
宏的本质是:替换</span>
*/
int main()
{
	double result;
	int r = 3;
	result = r*r*PI;
	cout<<result<<endl;
	return 0;
}</span>

关于程序运行过程如下图所示

技术分享

下面介绍打开".i"文件的方法:

工程------>设置------->c/c++-------->底部(工程选项)中加入“\P”

技术分享

然后打开文件所在位置会发现".i"文件技术分享

打开‘‘.i"文件:

会验证#include<> 的本质是:将各种函数定义引入(包括)进来:

技术分享

预编译之后的主函数如下:

技术分享

宏的本质是:替换

<span style="color:#333333;">#include<stdio.h>
#include<iostream.h>

#define int int*
int main()
{
	int a;
	int b;
	return 0;
}</span>
技术分享
#include<stdio.h>
#include<iostream.h>

#define int int*
int main()
{
	int a;
#undef int
	int b;
	return 0;
}
技术分享
#undef int作用:

只屏蔽对int的宏替换

若换为:#undef

屏蔽所有的宏替换



#define(宏替换)以及如何打开预编译之后的“.i”文件看宏的本质

标签:   .i文件   预编译   c++   

原文地址:http://blog.csdn.net/zongyinhu/article/details/44497475

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!