【发布时间】:2017-02-19 10:45:36
【问题描述】:
我正在编写一个非常简单的程序来显示一个班级的模拟天气数据,但我不明白为什么 Visual Studio 总是给我一个错误
错误是温度通过它告诉我的方向:错误 C2440: '=' : cannot convert from 'double (__cdecl *)(void)' to 'double'
我迷路了,请帮忙
void DisplayWeatherData(void)
{
double temperature,humidity,pressure,windspeed,direction,bt,bp,bw;
temperature = GetTemperature;
humidity = GetHumidity;
pressure = GetPressure;
windspeed = GetWindspeed;
direction = GetWindDirection;
bt = (temperature * 9.0 / 5.0) + 32.0;
bp = pressure * KPATOINHG;
bw = windspeed * KMTOMPH;
printf("\nTemperature: %4.1lf C\tHumidity: %3.0lf%%\tPressure: %4.1lf kPa\n",temperature,humidity,pressure);
printf("Windspeed: %3.0lf km/hr\tDirection: %3.0lf Degrees\n\n",windspeed,direction);
printf("\nTemperature: %4.1lf F\tHumidity: %3.0lf%%\tPressure: %4.1lf inHg\n",bt,humidity,bp);
printf("Windspeed: %3.0lf mph\tDirection: %3.0lf Degrees\n\n",bw,direction);
}
double GetTemperature(void)
{
return 25.1;
}
double GetHumidity(void)
{
return 55.4;
}
double GetPressure(void)
{
return 101.7;
}
double GetWindspeed(void)
{
return 15.5;
}
double GetWindDirection(void)
{
return 320.0;
}
【问题讨论】:
-
简单的拼写错误。
GetTemperature-->GetTemperature() -
temperature = GetTemperature;-->temperature = GetTemperature();等等。
标签: c visual-studio visual-studio-2012 compiler-errors