小编Dev*_*on 的帖子

^ = 32背后的想法是什么,将小写字母转换为高位字母,反之亦然?

我在解决代码问题上遇到了一些问题.通常我首先检查字符是英文字母的上部还是下部,然后减去或添加32以将其转换为相应的字母.但我发现有人^= 32做了同样的事情.这里是:

char foo = 'a';
foo ^= 32;
char bar = 'A';
bar ^= 32;
cout << foo << ' ' << bar << '\n'; // foo is A, and bar is a
Run Code Online (Sandbox Code Playgroud)

我已经搜索了这方面的解释并没有找到答案.那么为什么会这样呢?

c++ ascii bit-manipulation

146
推荐指数
10
解决办法
2万
查看次数

标签 统计

ascii ×1

bit-manipulation ×1

c++ ×1