我在解决代码问题上遇到了一些问题.通常我首先检查字符是英文字母的上部还是下部,然后减去或添加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)
我已经搜索了这方面的解释并没有找到答案.那么为什么会这样呢?
我正在学习一门关于操作员的课程,在练习中,这个例子说明'a'>'A'===是真的.它没有解释为什么它是真的.我已经尝试过自己的研究,并认为它可能与Lexicographical命令有关,但这似乎不对.我还检查了它是否与ASCII和Unicode字母表中的位置有关,但似乎也不是这种情况.有人可以解释为什么小写'a'大于JavaScript中的大写'A'?