好吧,我正在尝试通过函数将一些数字转换为其他数字。向量“ tempc”包含7摄氏度数。类型“ tempf”将包含华氏温度。但是我在标题“从'float *'到'int'[-fpermissive]的错误无效转换”中得到了这个错误。我是编程新手,所以我真的是新手。抱歉,该代码是意大利语
#include <iostream>
using namespace std;
//dichiarazione variabili e vettori
float tempc[7] = {23,25,22,19,18,20,16};
float tempf[7];
const int MAX_GRADI = 7;
//funzione conversione
int ConversioneInF ()
{
for (int i=0;i<MAX_GRADI;i++)
tempf[i]=(9/5)*tempc[i]+32; //C in F
return tempf;
}
int main ()
{
ConversioneInF();
for (int i=0;i<MAX_GRADI;i++)
cout<<"La temperatura in fahrenheit e' :"<<tempf[i]<<endl;
return 0;
}
答案 0 :(得分:2)
在函数ConversioneInf
中,您将返回tempf
。
这是一个浮点数组,在c ++中是一个指向浮点(float*
)的指针。
此类型不能转换为指定的返回类型int
。
由于不使用返回值,只需将其更改为void:
void ConversioneInF ()
答案 1 :(得分:1)
void ConversioneInF ()
{
for (int i=0;i<MAX_GRADI;i++)
tempf[i]=(9.0/5.0)*tempc[i]+32;
}
无论如何,tempf是全局的,您不需要返回它。