搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 这个程序的结果怎么会是这样的,请大虾指教。
标题:
这个程序的结果怎么会是这样的,请大虾指教。
只看楼主
bigzerg
等 级:
新手上路
帖 子:39
专家分:0
注 册:2008-5-19
楼主
问题点数:0 回复次数:4
这个程序的结果怎么会是这样的,请大虾指教。
#define ADD(x) x+x
void mian( )
{int a=2,b=1;
prinft("%d\n",3*ADD(a+b));}
输出结果是10。为什么?
搜索更多相关主题的帖子:
结果
指教
ADD
2008-06-10 21:16
himpo
等 级:
论坛游侠
帖 子:192
专家分:123
注 册:2008-5-16
第
2
楼
得分:0
3*ADD(a+b)
展开为3*a+b+a+b=10
注意宏与函数的概念!
要想得到结果可
#define ADD(x) (x)+(x)
然后3*ADD(a+b)改为3*(ADD(a+b)) 好像很麻烦???
不过为了理解宏的概念,可以尝试一下。。。
2008-06-10 21:24
jiang5495
等 级:
新手上路
威 望:
2
帖 子:296
专家分:0
注 册:2008-5-11
第
3
楼
得分:0
同意楼上的看法.
宏只能做简单的替换,
不能像 const一样
2008-06-10 21:29
bigzerg
等 级:
新手上路
帖 子:39
专家分:0
注 册:2008-5-19
第
4
楼
得分:0
多谢~~
2008-06-10 22:54
now
来 自:广州
等 级:
新手上路
帖 子:544
专家分:0
注 册:2007-11-9
第
5
楼
得分:0
仅为文本替换,不作计算
GIS
Geographic Information System
你在哪里?——》你的坐标?
2008-06-10 23:45
5
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-218520-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.941962 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved