问答详情
源自:2-8 自动类型转换

加了个单引号为什么运行结果就不一样?

#include <stdio.h>
int main()
{    
   char c = 'a';    
   int n ='c';  //将c赋值给n    
   float f ='c';  //将c赋值给f    
   double d ='c';   //将c赋值给d   
   printf("%d\n",n);   
   printf("%f\n",f);    
   printf("%lf\n",d);    
   return 0;    
}
运行结果如下:
99
99.000000
99.000000


提问者:KCHO 2018-08-20 23:01

个回答

  • 慕粉3224859
    2018-08-27 18:00:41

    char c,这里的c是变量,你可以用其他变量名代替。‘c’加了引号表示字符c,对应ASCII值是99。如果这条题目这样修改后作为考题,是非常具有迷惑性的。

  • qq_星晞_gilPT9
    2018-08-27 13:32:36

    你给他们加了单引号等于变成了字符,a编码97 b98 c99,   现在要赋值,不能加单引号


  • BENGle
    2018-08-21 00:00:12

    这时候字母本身就代表一个数