#include <stdio.h>
int main()
{
double num = 2.5;
int num = (int)num;
printf("%d\n", num);
return 0;
}
你和上面的浮点型变量定义成一样的了,这样系统会区分不了 需要重新定义一个整形变量,然后强制转换如: int num1=(int)num; printf(“num的整数部分是%d\n”,(int)num1); 这样就可以了
你这样因为不具备强制转换的要求啊,像这样就具备了
#include <stdio.h>
int main()
{
double num = 2.5; //定义浮点型变量num并赋值为2.5
printf("num的整数部分是%d\n", (int)num);
return 0;
}
类型冲突
conflicting types for 'num' int num = (int)num;
#include <stdio.h> int main() { double num = 2.5; int num2 = (int)num; printf("%d\n", num2); return 0; }
#include <stdio.h>int main(){ double num = 2.5; int num2 = (int)num; printf("%d\n", num2); return 0;}
重新定义的整形符号不因与上面double一样
#include <stdio.h>
int main()
{
double num = 2.5;
int num = (int)num;
printf("%d\n", (int)num);
return 0;
}
输出的是 int num 的值