社区
C++ 语言
帖子详情
请教一个函数的问题?
shengyuan5278
2006-04-04 09:34:48
#include <iostream.h>
int fun(int x,int y)
{ return x*y;}
void main()
{ int k=5;
cout<<fun(k++, ++k)<<endl;
}
为什么输出为:36?如果这样cout<<fun(++k, k++)<<endl;则为37,能帮我分析一下吗?
...全文
216
10
打赏
收藏
请教一个函数的问题?
#include int fun(int x,int y) { return x*y;} void main() { int k=5; cout<<fun(k++, ++k)<<endl; } 为什么输出为:36?如果这样cout<<fun(++k, k++)<<endl;则为37,能帮我分析一下吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ChenSu2008
2006-04-04
打赏
举报
回复
vc6.0 这个函数参数的顺序也可以从这个例子里清楚的看出来
#include <iostream.h>
class Base {
public:
Base() {
cout<<"construct Base instance"<<endl;
}
Base(Base& b) {
cout<<"copy Base instance"<<endl;
}
~Base() {
cout<<"destroy Base instance"<<endl;
}
};
class Derived:public Base {
public:
Derived() {
cout<<"construct Derived instance"<<endl;
}
Derived(Derived& d) {
cout<<"copy Derived instance"<<endl;
}
~Derived() {
cout<<"destroy Derived instance"<<endl;
}
};
void func(Base a, Derived d) {
}
void main()
{
Base b;
Derived d;
cout<<"call the function"<<endl;
func(b, d);
cout<<"end the function"<<endl;
}
lengxiao_wang
2006-04-04
打赏
举报
回复
语法糖,应该避免这样写,在vc6和vc7中,我追踪过类似的问题,发觉俩个编译器对此有不同的实现!
thinkingli
2006-04-04
打赏
举报
回复
ls正解,编译器是从右向左读取参数的。
iamcaicainiao
2006-04-04
打赏
举报
回复
这个跟编译器有关。不同编译器可能不同结果
cunsh
2006-04-04
打赏
举报
回复
参数的计算顺序没有规定.楼主不要这么写呀?
cwowlonglong
2006-04-04
打赏
举报
回复
不明白,学习
ChenSu2008
2006-04-04
打赏
举报
回复
执行完这个表达式的时候,k变成了6
fun(k++, ++k)
执行完这个表达式的时候,k变成了7
cout<<fun(k++, ++k)<<endl;
fun(k++, ++k)和这个fun(k, ++k)在函数中的效果一样
cout<<fun(++k, k++)<<endl;我得到是30,VC6.0
函数里的参数应该是从右往左的顺序计算的
逸学堂
2006-04-04
打赏
举报
回复
编译相关,首先先确定默认函数调用约定。
理解上面的最好方法是,查看反汇编。
zhuying1983
2006-04-04
打赏
举报
回复
c++中参数是从右往左读,++k返回6,k变成6,接着k++返回6,k变成7,6*6 = 36
bonseedd
2006-04-04
打赏
举报
回复
应该是30
Excel
函数
100问
用Excel多年,还是只会常用的那三五个
函数
。 本次课程结合职场工作中遇到的
问题
,整理100问用
函数
来帮助大家学习Excel
函数
的这些痛点。熟练掌握Excel
函数
的他,总是几分钟就能完成,别人倒腾1天的工作量。
python多个
函数
_
请教
:
一个
类中可以定义多个同名
函数
?
python认为每个文件是
一个
module每个
函数
的的作用域就是本module但是module可以被importimport进来的module相当于在本module内谢谢,你说得对,昨晚太晚了,老眼昏花地看错了。应该是下面这种形式。两个def get_...
matlab lsqucurvefit,
请教
关于matlab中curvefit
函数
的
问题
?
请教
关于matlab中curvefit
函数
的
问题
?我的是MATLAB7.0一开始没有curvefit这个
函数
后来下了个Matlab数学建模工具箱,虽然有curvefit这个
函数
了, 可是运行后会出来这么些东西:>> tdata=100:100:1000;>>...
如何用matlab编写分段
函数
_
请教
各位怎样用matlab定义
一个
分段
函数
MATLAB分段
函数
...
请教
各位怎样用matlab定义
一个
分段
函数
MATLAB分段
函数
www.zhiqu.org 时间: 2020-12-27步骤如下1、打开MATLAB软件,如图所示。2、建立
一个
脚本文件,具体方法如图所示。3、定义变量。4、建立循环,求解分段
函数
。...
关于单例模式下 类的静态成员
函数
能调用类的构造
函数
的
问题
大神说:如果类内还有
一个
bar的非静态成员
函数
,那么getInstance去访问bar的话,会出错,原因是编译器在访问bar时,会需要提供
一个
this指针(相当于编译器认为this->bar),因此,此时调用会出错。 然而调用类的...
C++ 语言
64,676
社区成员
250,490
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章