使用xcode编程C,这是f
#include <stdio.h>
int multiply (int x, int y) {
return x * y;
}
int main()
{
float result = (float) multiply (0.2, 0.5);
printf("the result is %f", result);
}
Run Code Online (Sandbox Code Playgroud)
我没有得到正确的价值,我得到0.0000 !! 我做了铸造,但我不知道什么是错的.
你的程序乘0用0.
multiply有两个int参数,让您0.2和0.5被隐式转换为int呼叫前.这截断两者0.
你的类型转换在这个程序中没有做任何事情,因为multiply(无论如何int)返回值将在赋值期间被隐式转换result.
multiply如果希望此程序正常工作,则需要更改(或添加浮点版本并调用它)的定义.