c语言中AScii码值有等于330的吗??为什么输出显示是字符J ??
答案:4 悬赏:0 手机版
解决时间 2021-02-08 09:58
- 提问者网友:轮囘Li巡影
- 2021-02-07 22:48
c语言中AScii码值有等于330的吗??为什么输出显示是字符J ??
最佳答案
- 五星知识达人网友:一袍清酒付
- 2021-02-07 23:03
ASCII 从0到255 共256个
你让ch等于300 过了255它会从头算起
300-256=74
也就是说相当于你输出的是ascii码为74的字符 也就是大写的J
你让ch等于300 过了255它会从头算起
300-256=74
也就是说相当于你输出的是ascii码为74的字符 也就是大写的J
全部回答
- 1楼网友:蓝房子
- 2021-02-08 00:30
最大才到255
- 2楼网友:末日狂欢
- 2021-02-08 00:11
char在编译器中为8位二进制数,而ch=330=101001010B,共九位
所以编译器会取低八位,即01001010B=74(十进制),所以ch-‘J’。。。
所以编译器会取低八位,即01001010B=74(十进制),所以ch-‘J’。。。
- 3楼网友:西岸风
- 2021-02-07 23:10
C语言中,char类型是占用一个字节的,你把一个超过255的值赋值给char类型的变量, 编译器在编译的时候会把这个值截断的.
比如把 0xABCD赋值给ch, ch只取0xCD作为ch的值.
330 = 0x014A, 截断成一个字节的char就是 0x4A = 74,也就是大写的J
比如把 0xABCD赋值给ch, ch只取0xCD作为ch的值.
330 = 0x014A, 截断成一个字节的char就是 0x4A = 74,也就是大写的J
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯