标题:关于宏函数的一个问题
只看楼主
shower
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2006-4-29
 问题点数:0 回复次数:2 
关于宏函数的一个问题

#include "stdafx.h"
#include <iostream>

using namespace std;
#define ADD(r) ((r)+(r)+(r))

int _tmain(int argc, _TCHAR* argv[])
{
int c=0;
cout<<"ADD(c): "<<ADD(c)<<endl;
cout<<"ADD(++c): "<<ADD(++c)<<endl;

return 0;
}

为什么ADD(++c) 输出的是 9 ?我们系有个特牛的同学说是堆栈顺序的问题。
什么是堆栈顺序?关于这方面的有没有什么著名的文章?

搜索更多相关主题的帖子: 堆栈 函数 ADD int cout 
2006-05-18 16:51
桂圆
Rank: 1
等 级:新手上路
威 望:1
帖 子:101
专家分:0
注 册:2006-5-15
得分:0 
3+3+3=9 不知道我的想法对不对 呵呵

2006-05-18 16:59
wfpb
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:2188
专家分:0
注 册:2006-4-2
得分:0 
怎么我输出的是7?

[glow=255,red,2]wfpb的部落格[/glow] 学习成为生活的重要组成部分!
2006-05-18 18:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-65316-1-1.html




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

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