灯火阑珊201 发表于 2022-9-21 19:53:09

请问为啥结果是b?

#include<stdio.h>
int main()
{
        char m;
        m='B'+32;
        printf("%c",m);
        return 0;
}



结果为b

桃花飞舞 发表于 2022-9-21 19:56:48

本帖最后由 桃花飞舞 于 2022-9-21 19:58 编辑

你查下ASCII码表就知道了, 'B'是66  'b'是98   'B'+32 ==> 66 + 32 ==98

灯火阑珊201 发表于 2022-9-21 19:59:08

桃花飞舞 发表于 2022-9-21 19:56
你查下ASCII码表就知道了

懂了,大写字母的ASCII码比同一个小写字母的小32对吧

Twilight6 发表于 2022-9-21 20:57:41

灯火阑珊201 发表于 2022-9-21 19:59
懂了,大写字母的ASCII码比同一个小写字母的小32对吧



是的,看看 ASCII 表你就恍然大悟了:https://www.runoob.com/w3cnote/ascii.html

howzyao 发表于 2022-9-24 00:34:34

今天学到了一招,(char)32是空格,'a'+32==A为真。我怎么如此痴迷,看到了才反应过来

灯火阑珊201 发表于 2022-9-24 13:25:50

howzyao 发表于 2022-9-24 00:34
今天学到了一招,(char)32是空格,'a'+32==A为真。我怎么如此痴迷,看到了才反应过来

哈哈哈哈,我也是,刚学没多久都不知道

高山 发表于 2022-9-24 14:02:06

+32的意思就是大写转小写
不信你把“B”改成“A”试试
看看Ascill码表就知道了
B的ascill码是66,66+32=98,98是b

回答不易,望设最佳答案

灯火阑珊201 发表于 2022-9-24 14:09:40

高山 发表于 2022-9-24 14:02
+32的意思就是大写转小写
不信你把“B”改成“A”试试
看看Ascill码表就知道了


已经知道了,谢谢大佬!

高山 发表于 2022-9-24 14:10:19

灯火阑珊201 发表于 2022-9-24 14:09
已经知道了,谢谢大佬!

那就设置一个最佳答案被
点击右下角设置
页: [1]
查看完整版本: 请问为啥结果是b?