推 johnpage:你知道wordfreqece =word的意思嗎? 11/26 17:53
→ snoopy0907:不是因為中文字佔2b 所以有分前半和後半部分? 11/26 17:55
推 littleshan:好奇怪啊 為什麼中文字是2byte呢 11/26 18:22
→ snoopy0907:我知道6為啥不可..是下面的for迴圈的終止條件設錯@@ 11/26 18:25
→ snoopy0907:但是用fprintf針對每個元素印出來還是怪怪的.. 11/26 18:26
※ 編輯: snoopy0907 來自: 219.71.70.253 (11/26 18:44)
→ purincess:你知道字串的結尾是什麼嗎 11/26 20:23
推 okgogogo:你知道你的while跟for共跑幾次嗎?...還要補'\0' 11/26 21:15
→ linotwo:問題在於 fgets 發現你給的空間只有 2 bytes 11/26 21:52
→ linotwo:而最後一個 byte 比須做為 null terminator 11/26 21:52
→ linotwo:所以它會只讀 1 byte 並在後面補 '\0' 11/26 21:53
推 johnpage:程式做的不是題目要的 11/26 23:21
→ snoopy0907:謝謝,後來自己try過幾次就知道一個字要3個byte 11/27 08:08
推 LPH66:3 個 byte...竟然是 UTF-8 orz 11/27 09:51
→ descent:snoopy0907: 你的假設不會每次都正確,utf8 是不定長度編碼 11/27 16:23
→ descent:中文有可能 3-4 byte, 這不是容易處理的問題, 請找尋 11/27 16:24
→ descent:library 來處理這問題。 11/27 16:24
→ descent:若你可以使用 c++11, 可以使用 ofstream/wifstream 來處理 11/27 16:25