这个C语言程序是什么意思
问题描述:
#include int main() { char c1,c2; c1=97;c2=98; printf("%c,%c\n",c1,c2); printf("%d,%d\n",c1,c2); return 0; }
答
首先c1和c2是char类型而不是int,也就是说它们是字符而不是整形数字
所以在输出时,如果按%c,也就是字符输出,结果应该是ascii表里,97和98对应的字符,也就是a和b
如果按%d,也就是数字输出,那就会进行类型转换,自动将char转换成int,输出得到的就是数字97和98
答
这段不规范的代码看得我头皮发麻(简单吐槽一下)。不过很多基础知识还是尽快掌握为好,比如你这里的类型申明、转换