关于函数返回值问题!

vloso 2018-07-11 09:29:43


#include <fstream>
#include <iostream>
#include <cstdlib>
using namespace std;
#define x 9

//int fill_array(double ar[],int limit);

int fill_array(double ar[],int limit)
{
/*
double temp;
int i;
for(i=0; i<temp; i++)
{
cout<<"EnterA"<<i+1<<":";
cin>>temp;
if(!cin)
{
cin.clear();
while(cin.get()!='\n')
continue;
cout<<"Bad input /n";
break;
}
else if(temp<0)
break;
// ar[i]=temp;
}
cout<<i<<endl;
*/
for(int i=0;i<9;i++)
cout<<ar[i]<<endl;

return ar[1];
}
int main()
{
double ar[x]= {1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5};
int limit=9;
cout<<fill_array(ar,limit);
}



return 返回的是函数的计算结果!! 所以我随便填写了一个数字ar【0-9】他返回的不是数组内容,错在哪里了?

我也做了一个循环遍历,结果验证也没错!!
...全文
59 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
iAn0 2018-07-12
  • 打赏
  • 举报
回复
返回类型不对
vloso 2018-07-11
  • 打赏
  • 举报
回复
引用 1 楼 yangyangsnr 的回复:
函数返回值类型是int,所以把double类型的ar[1]进行了隐式转换,2.5转换成了2。


原来如此,,是固定这样的还是真的没办法得到精确答案?
孤雲独去闲 2018-07-11
  • 打赏
  • 举报
回复
函数返回值类型是int,所以把double类型的ar[1]进行了隐式转换,2.5转换成了2。

64,647

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧