C++中的引用

#include<iostream>usingnamespacestd;intfactor(int,int&);intmain(){intnumber,squared,e... #include<iostream>
using namespace std;
int factor(int ,int&);
int main()
{
int number,squared,error;
cout<<"enter a number(0~20):";
cin>>number;
error = factor(number,squared);
if(error)
cout<<"error encountered!\n";
else
{
cout<<"Number: "<<number<<endl;
cout<<"Squared: "<<squared<<endl;
}
return 0;
}
int factor(int n,int& rSquared)
{
if(n>20 && n<0)
return 1;
rSquared = n*n;
return 0;
}
如果输入是3 则rsquared=3.但是如果将程序中某一部分int factor(int ,int&);改成int factor(int ,int);和int factor(int n,int& rSquared)改成int factor(int n,int rSquared)的话,这样再输入3,则rsquared=-858993460 我不知道是为什么??还请好心的大虾帮帮忙 谢谢啊
展开
 我来答
dos1989
2010-10-19
知道答主
回答量:17
采纳率:0%
帮助的人:0
展开全部
这个程序输入3的时候 rsquared=9吧?改成int factor(int,int)squared的值不会改变,也就说没给赋值,输出的还是分配给他内存的里东西
招珈蓝荣Oi
2010-10-19 · TA获得超过1.5万个赞
知道大有可为答主
回答量:1.3万
采纳率:0%
帮助的人:1.3亿
展开全部
可以在不希望改变的引用前加上美元符号($),这样就能对单元格 C1 进行绝对引用。如果要对单元格 C1 进行绝对引用,请在公式中加入美元符号: =A5*$C$
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
巧寒垒0g6780
2010-10-19 · 超过33用户采纳过TA的回答
知道答主
回答量:100
采纳率:0%
帮助的人:0
展开全部
int factor(int ,int&);和int factor(int ,int);
factor(number,squared);
加了&的话表示传引用,squared的值会在函数中改变,而没加squared的值则不会改变了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式