ASCII码表大家都很熟悉了吧,利用码的排列规律,我们可以很容易的实现一些操作,比如判断是否是数字、大小写转换等。
这里写大小写转换的函数:
char toUpper(const char& ch) { return ch & 0x5F; } char toLower(const char& ch) { return ch | 0x20; } |
函数原理:大小写字母的差是32,比如大写的A是65,小写的A是97,所以我们把右边数第6位置0或者1就能实现大小写转换。转换成大写时,把第6位置0,用ch & 0x5F实现。转换成小写时置1,用ch | 0x20实现。怎么样,相当的简单吧,由此,我们可以写string类的toUpper和toLower函数了。^_^,更多技巧尽在探索中。