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函數了。^_^,更多技巧盡在探索中。