一道C++题目,求详解

有如下程序:#include<iostream>usingnamespacestd;intmain(){voidfunction(doubleval);doubleval... 有如下程序:
#include<iostream>
using namespace std;
int main()
{
void function(double val);
double val;
function(val);
cout<<val;
return 0;
}
void function(double val)
{
val=3;
}
编译运行这个程序将出现的情况是(D)
A 编译出错,无法运行
B 输出:3
C 输出:3.0
D 输出一个不确定的数
展开
 我来答
syw天真
2013-12-18
知道答主
回答量:17
采纳率:0%
帮助的人:6.3万
展开全部
当调用函数以后栈将为val= 3分配空间;当离开函数val释放变成一个垃圾数据。当再次调用也是同样原理。
百度网友0ecab4f
2013-12-18 · TA获得超过1027个赞
知道小有建树答主
回答量:412
采纳率:0%
帮助的人:367万
展开全部
不同函数之间定义的相同数据名彼此之间没有关系,function函数的val的赋值只能在function函数当中起作用,与主函数当中的val没有任何关系。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
最爱dnbc66
2013-12-18 · TA获得超过372个赞
知道小有建树答主
回答量:308
采纳率:0%
帮助的人:240万
展开全部
你一开始没有给val赋值,因为val是定义在函数里的一个非静态空间的局部变量,所以他的值是不确定的;
第二,参数传递只能是实际参数传递给形式参数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
中国计量zxy
2013-12-18
知道答主
回答量:45
采纳率:100%
帮助的人:11.1万
展开全部
主函数里的val不是function里的val,主函数里并未对val赋值,如果在主函数里val=1;
就是输出1,val=3就是输出3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式