| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 421 人关注过本帖
标题:为什么a=M*N=N+3*N=4+3*4=16。
只看楼主 加入收藏
lele2010
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:84
专家分:121
注 册:2010-1-23
结帖率:100%
收藏
已结贴  问题点数:4 回复次数:2 
为什么a=M*N=N+3*N=4+3*4=16。
#define N 4
#define M N+3
#include<stdio.h>
void main()
{
    int a;
    a=M*N;
    printf("%d\n",a);
}
为什么a=M*N=N+3*N=4+3*4=16。
而不是a=M*N=(N+3)*N=(4+3)*4=28呢?
2010-01-27 11:36
h978147355
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:63
专家分:187
注 册:2009-12-29
收藏
得分:4 
宏定义就是直接带入的
你的M*N宏展开以后是N+3*N 是直接带入的 如果你定义的是
#define M (N+3)话就可以是28
2010-01-27 11:52
lele2010
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:84
专家分:121
注 册:2010-1-23
收藏
得分:0 
嗯!谢谢!

喜欢结交更多C语言学习者,QQ:1093027367
2010-01-27 11:58
快速回复:为什么a=M*N=N+3*N=4+3*4=16。
数据加载中...
 
   



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

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