| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 603 人关注过本帖
标题:疑惑-ing
只看楼主 加入收藏
锦芳
Rank: 2
等 级:论坛游民
帖 子:44
专家分:15
注 册:2013-3-1
结帖率:46.15%
收藏
已结贴  问题点数:20 回复次数:7 
疑惑-ing
#define PI 3
#define S(r) PI*r*r
main()
{
    float a,area;
    a=3.0;
    area=S(a+1);
    printf("a=%f,area=%f",a,area);
}
为什么输出是:area=13.00000呢?
2013-06-23 23:32
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:4 
带参宏定义  有意思

[ 本帖最后由 韶志 于 2013-6-23 23:54 编辑 ]

三十年河东,三十年河西,莫欺少年穷!
2013-06-23 23:47
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:0 
你肯定疑惑为什么结果不是48对不对
其实它是这样计算的...
area=PI * a + 1 * a + 1 = 3 * 3 + 1 * 3 + 1=13
要想得到48   应该 area==S((a+1));   多加一层括号

三十年河东,三十年河西,莫欺少年穷!
2013-06-24 00:00
锦芳
Rank: 2
等 级:论坛游民
帖 子:44
专家分:15
注 册:2013-3-1
收藏
得分:0 
回复 3楼 韶志
嗯,原来如此,谢谢你啊!
2013-06-24 21:21
浪漫横行
Rank: 4
等 级:业余侠客
威 望:1
帖 子:127
专家分:291
注 册:2013-4-30
收藏
得分:4 
宏定义的运算跟普通运算不同,没夸号!
2013-06-27 13:55
tremere
Rank: 6Rank: 6
来 自:火星
等 级:侠之大者
帖 子:223
专家分:432
注 册:2013-3-11
收藏
得分:4 
宏定义,,,宏定义,,,我在这发现很多个同样的问题。
这个跟普通的运算有点点不同的

极品菜鸟,来学习啦,啦啦啦啦啦啦啦。。。
2013-06-27 16:06
lyl930130
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:323
专家分:111
注 册:2013-5-13
收藏
得分:4 
回复 3楼 韶志
受教了
2013-06-27 17:32
快速回复:疑惑-ing
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030882 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved