首页 > 电脑

c语言里字符和整形怎么算术运算

更新时间2022-03-23 20:24:13

char n;
int c;
c='8'+'0'-2*'0';
n=c%10+'0';
printf("%c",n);
为啥是字符8,而不是字符6,还有2*'0'是换算成2*48吗

你要这样理解 ,在c语言中,字符实质上也是一个整形,它的范围为-128~127(无符号的为0~255)

而常量字符,实际值是它的ASCII码,如'8' 就等于56(这个可查ASCII表),而'0'为48

所以

c='8'+'0'-2*'0'=56+48-2*48=8

n=c%10+'0'=8%10+48=8+48=56

你若用%c输出某一字符的值,它就是输出该ASCII码值对应的字符,因为56对应的是'8'

所以上面的程序结果就是

8


相关标签:c语言运算

上一篇:鲁大师一定要用吗?

下一篇:电脑开机,非要开机按f1才能正常启动,啥情况?