C語言-處理中文字符串注意事項

Note1: 因爲一個漢字佔2個字節(Byte),而一個英文字母佔1個字節(Byte),因此用char str[LENGTH] 定義漢字字符串的時候,必定要注意LENGTH的取值,以保證有足夠的空間存儲漢字字符串。 spa

例如:當漢字字符串爲 「諸葛亮是個好孩子」(共8個漢字)時操作系統

LENGTH的值最小應該爲 2*8+1=17:字符串


即:char str[17];it

最後的那個+1是爲了存儲‘\0’,字符串的結尾符號
英文


Note2: 漢字所佔的字節數依賴於操做系統co

WIN7-32bit: 一個漢字佔2個字節,標點符號一樣佔2個字節,數字佔1個字節,字符串結束標誌‘\0’佔一個字節。
字符

Linux(CentOS-32bit: 一個漢字佔3個字節,逗號和句號一樣佔3個字節,‘~’佔一個字節,數字佔1個字節,字符串結束標誌‘\0’佔一個字節。
數字

相關文章
相關標籤/搜索