2018年1月17日 星期三

C/C++ 程式檔案從Windows轉移到Linux或Mac作業系統上編譯 及 字元編碼在Windows環境下與 Linux環境下編譯 的差異

一般我們在Windows環境下喜歡使用如 DevC++ 或是 CodeBlocks 等編輯器來編輯C/C++程式,但預設的編碼卻是 ANSI 編碼,如 big5 等,但同樣的一份Code在Linux環境下編譯卻會變成亂碼,因為 Linux 環境下預設的編碼是 UTF-8,因此我們把 code 移到 linux 之前會先做轉換編碼的動作


原本的 big5 編碼

在 Linux 環境下打開會是亂碼

在Linux環境下編譯也是亂碼

利用 notepad++ 轉換成 utf-8 格式

 之後在 windows 上的編輯器看來是亂碼


但是這樣就可以成功的在 linux 上編譯了


並且打開編輯會是正常的

不知有沒有眼尖的朋友發現
在windows底下一個中文字元佔2byte
但在linux底下一個中文字元佔的卻是3byte呢!

沒有留言:

張貼留言