判断字符是否是同一个字母的大小写
方案1、由ASCII码表知,同一个字母的小写表示ASCII码值要比大写表示的大32
char ch1 = 'a';
char ch2 = 'A';
if( ch1 == ch2 + 32 )
;
方案2、tolower
将字符转换为小写
if( tolower(ch1) == tolower(ch2) )
;
方案3、使用异或,通过观察大小写字母的ASCII码值发现,同一个字母的大写和小写之间相差32,用二进制表示时,差异仅体现在从右往左数的第6位上,所以可以通过判断异或结果是否为32来得知两个字符是否为同一个字母的大小写。
if( ch1 ^ ch2 == 32)
;