-
_潇潇暮雨
变量num被重复定义了,另外格式化字符串里面应该写成:"%d\n",完整代码:#include <stdio.h>
int main()
{
double num = 2.5;
int a=(int)num; //另外取一个变量名
printf("%d\n", a);
return 0;
}
-
栩栩秋水
我当初有这个疑惑,但是看例题就明白了,你这里改成“int num1 = (int)num”就可以啦,原理是新的变量的形式(int)不会和旧的(double)占用同一个变量名而发生矛盾。
-
西伦
double了就不能再int了
-
Eve03
int num=(int)num; 中出现了错误,num本来是一个double型的变量(名称),然而“int num”的意思是再定义一个 int型的变量名num 。变量名重复。你要把double型转换为int型的话,直接printf("%d\n",(int)num);就好了。
-
lili5464645
#include <stdio.h>int main(){ double num = 2.5; int num1; num1=(int)num; printf("num%d\n", num1); return 0;}
-
DD_cc
除了上面说的重复定义,还有printf("num=%d\n",num);你少了=号