#include <stdio.h>
int main()
{
char c = 'a';
int n =c; //将c赋值给n
c=97;
float f =c; //将c赋值给f
double d =c; //将c赋值给d
printf("%d\n",n);
printf("%f\n",f);
printf("%lf\n",d);
return 0;
}
为何f转为双精度浮点了?
首先你搞明白什么叫精度,然后再提出这个问题,你自己就会豁然开朗了
因为你的 c 实则为 char 类型 , 97 等于 两个字符串, 你那样赋值不报错也不给警告?