c++ 从混合中英文数字等的string 中按顺序分别输出
生活随笔
收集整理的這篇文章主要介紹了
c++ 从混合中英文数字等的string 中按顺序分别输出
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
?
漢字占兩個(gè)字節(jié),數(shù)字和英文字母占一個(gè)字節(jié),要輸出的話首先判斷是英文數(shù)字還是漢字,
ANSI:漢字區(qū)的內(nèi)碼范圍高字節(jié)從B0-F7,低字節(jié)從A1-FE
Unicode:漢字的Unicode編碼范圍為\u4E00-\u9FA5 \uF900-\uFA2D
?
可知我們只要判斷高位字節(jié)的最高位是否為一就可以
?
string s = "一二257【漂亮【jkljl";for(int i=0;i<s.length();i++){if( s.at(i) & 0x80 ){//s.at(i) < 0//中文string word;word+=s.at(i);word+=s.at(i+1);cout<< word<<endl;i++;}else{cout<< s.at(i)<<endl;}}
?
總結(jié)
以上是生活随笔為你收集整理的c++ 从混合中英文数字等的string 中按顺序分别输出的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: map的内存释放问题
- 下一篇: 如何解决没有文件扩展“.js”的脚本引擎