#include <stdio.h>
int main(void)
{
double aRate[10] = { 0.0, 0.1, 0.25, 0.5, 0.5, 0.6, 0.65, 0.8, 0.82, 0.97};
int nAge = 0, i = 0, nFee = 1000;
int a = 0;
printf("%d : \t%d \n", i, (int)(nFee*aRate[2]));
return 0;
}
Run Code Online (Sandbox Code Playgroud)
正如预期的那样,此代码的结果为0:250,但如果我省略这样的括号,
printf("%d : \t%d \n", i, (int)nFee*aRate[2]);
Run Code Online (Sandbox Code Playgroud)
那么结果是0:0.
为什么是
printf("%d : \t%d \n", i, (int)(nFee*aRate[2]));
Run Code Online (Sandbox Code Playgroud)
和
printf("%d : \t%d \n", i, (int)nFee*aRate[2]);
Run Code Online (Sandbox Code Playgroud)
不同?
它与优先顺序有关吗?