^(1 << 5)实现大小写转换
先看”现象“:

奇妙吧,^(1 << 5)就能实现大小写转换。
原理:
先看ASCII码表:

知:
A—Z:65—90
a—z:97—122
可以看到,对于单个字符,小写比大写数值大了32,即1 << 5,如果将一个大写字符ch转化为小写,这样写就可以了:
ch = ch + (1 << 5);
同理,大写转小写:
ch = ch - (1 << 5);
先看”现象“:

奇妙吧,^(1 << 5)就能实现大小写转换。
原理:
先看ASCII码表:

知:
A—Z:65—90
a—z:97—122
可以看到,对于单个字符,小写比大写数值大了32,即1 << 5,如果将一个大写字符ch转化为小写,这样写就可以了:
ch = ch + (1 << 5);
同理,大写转小写:
ch = ch - (1 << 5);
4万+

被折叠的 条评论
为什么被折叠?