房天下问答 >业主生活>其他> 问题详情

关于c++中if条件编译的一个问题

这个和预期结果一样#include<iostream.h>#define A 5void main(){ #if A>0 cout<<"A>0"<<endl;#elif A<0 cout<<"A<0"<&l... 展开
golb|2011-01-17 23:29

其他答案

yanhai15

#后的都是预编译指令,预编译,就是在编译前作一次字符串的替换。预编译指令要跟代码区分开来,因为他们是在编译前就处理好了的。lz可以这么理解:int A这样的代码只有在词法分析后才确定A是一个标识符;#define A 5会在编译前将代码中独立出现的A直接用5来替换,并把不满足条件的分支当成注释,只有满足的那一个分支下的代码有效
2011-01-18 05:11
来自北京市

免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。

关于我们网站合作联系我们招聘信息房天下家族网站地图意见反馈手机房天下开放平台服务声明加盟房天下
Copyright © 北京搜房科技发展有限公司
Beijing SouFun Science&Technology Development Co.,Ltd 版权所有
违法信息举报邮箱:jubao@fang.com
返回顶部
意见反馈