| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1099 人关注过本帖
标题:[求助][求助]一个初学C++的问题
只看楼主 加入收藏
ssar
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2005-7-19
收藏
 问题点数:0 回复次数:16 
[求助][求助]一个初学C++的问题

请帮忙分析以下的程序,给出该程序的正确执行结果,谢谢。

#include <iostream.h>

int add(int x,int y)

{

return x+y;

}

void main()

{

int m=2,n=3;

cout<<”1:”<<add(m++,m+n)<<endl;

m=2,n=3;

cout<<”2:”<<add(++m,m+n)<<endl;

m=2,n=3;

cout<<”3:”<<<endl;

m=2,n=3;

cout<<”4:”<<<endl;

}

搜索更多相关主题的帖子: 初学 
2005-12-03 01:14
虫虫飞ya飞
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2005-11-28
收藏
得分:0 
1:7
2:8
3:
4:
直接怀疑3和4你写对没????

2005-12-03 14:53
ElfDN
Rank: 4
等 级:贵宾
威 望:11
帖 子:291
专家分:0
注 册:2005-11-13
收藏
得分:0 
肯定出编译错误。。。

2005-12-03 20:00
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 
这个程序出现39个错误,2个警告,
是啥道理呢
哪个高手给改一下

2005-12-03 21:18
虫虫飞ya飞
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2005-11-28
收藏
得分:0 

#include <iostream.h>

int add(int x,int y)

{

return x+y;

}

void main()

{

int m=2,n=3;

cout<<"1:"<<add(m++,m+n)<<endl;

m=2,n=3;

cout<<"2:"<<add(++m,m+n)<<endl;

m=2,n=3;

cout<<"3:"<<endl;

m=2,n=3;

cout<<"4:"<<endl;

}

这样就行了都是点小毛病


2005-12-03 21:29
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 

cout<<"1:"<<add(m++,m+n)<<endl;

cout<<"2:"<<add(++m,m+n)<<endl;
哪位好心人能不能给我说说这2句是如何执行的呢,
我实在看不出来,为何等于7和8。

[此贴子已经被作者于2005-12-3 23:30:54编辑过]


2005-12-03 23:14
雨之神
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-11-23
收藏
得分:0 

不是大家好心不好心的问题,是回答这样的问题有点…………

cout<<"1:"<<add(m++,m+n)<<endl;
m++为2,m+n为2+3,所以结果为7

cout<<"2:"<<add(++m,m+n)<<endl;
++m为3,m+n为2+3,所以结果为8

区别在于
m++,表达式的值为2,m值为3。
++m,表达式的值为3,m值为3。

明白了吗?


是为众神之神
2005-12-04 16:25
yaoguai2005
Rank: 1
等 级:新手上路
帖 子:168
专家分:0
注 册:2005-9-11
收藏
得分:0 

区别在于
m++,表达式的值为2,m值为3。
++m,表达式的值为3,m值为3。

多谢解答
都是加一的意思,为何结果不同,让我看书先


2005-12-04 17:56
ssar
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2005-7-19
收藏
得分:0 

谢谢各位高手!学习了不少东西!

2005-12-04 19:54
史前大暴龙
Rank: 1
等 级:新手上路
帖 子:375
专家分:0
注 册:2005-11-22
收藏
得分:0 
我想问一下,为什么那句cout<<"2:"<<add(++m,m+n)<<endl;中的(m+n)不是等于3+3吗?为什么是2+3的??
那个++m不是表示M先自加一了吗?那它之后的M应该是3才对啊,为什么是2的,不明白.请高手们为我解答一下,谢了

我不是最好,但我可以更好,大家一起加油了
2005-12-04 23:12
快速回复:[求助][求助]一个初学C++的问题
数据加载中...
 
   



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

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