| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 706 人关注过本帖
标题:关于宏的问题
只看楼主 加入收藏
流星雨
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:JAVA风暴
等 级:版主
威 望:43
帖 子:1854
专家分:1868
注 册:2004-5-30
结帖率:56.76%
收藏
 问题点数:0 回复次数:2 
关于宏的问题

#include<stdio.h>

#define M 3

#define N M+1

#define NN N*N/2

main( )

{

printf("%d,",NN);

printf("%d\n,5*NN);

}

我认为根据宏定义,展开应该为3+1*3+1/2和5*3+1*3+1/5即结果为6和18,但答案偏偏是8和40,难道我又错了,展开因为(3+1)*(3+1)/2和5*[(3+1)*(3+1)/2]么,或者我还未掌握其中细节?望各位告之答案!

搜索更多相关主题的帖子: include 
2004-09-15 23:44
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
6,18答案错了

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2004-09-16 00:02
乌鸦丘比特
Rank: 1
等 级:新手上路
威 望:2
帖 子:625
专家分:0
注 册:2004-7-19
收藏
得分:0 
恩,这种问题编译一下就知道了

我喜欢创造,一只扑腾着翅膀向天空飞翔的乌鸦
2004-09-16 17:07
快速回复:关于宏的问题
数据加载中...
 
   



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

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