不同系統編碼造成的詭異錯誤

2021-10-04 21:13:39 字數 391 閱讀 9268

作為碼農,經常在不同作業系統間切換。linux的檔案一般為uft8無bom格式,用換行符進行換行。windows下vs的檔案預設gb2312,用回車換行來換行。

最近碰到問題,linux(ubuntu18)下執行正常,拿到vs2017下編譯,出現兩種情況:

c4819警告:warning c4819: 該檔案包含不能在當前**頁(936)中表示的字元。請將該檔案儲存為 unicode 格式以防止資料丟失。

編譯錯誤:例如if報錯,必須刪除前面的中文。

對於第一種,既然是警告,直接忽略。第二種必須刪除注釋中的中文。.即使如此,編譯通過,執行起來發生詭異的異常。如果是跨系統的,發生此問題時,建議考慮是否編碼問題。

最後確定對於編碼問題必須解決,統一轉碼,或者建議使用/**/進行注釋,而不是//

將專案放在不同系統環境下出現編碼格式錯誤

首先要注意的是你建立的資料庫是否是utf 8,如果不是的話就把資料複製出來重新建立乙個。進入dos命令 輸入 mysql u 使用者名稱 p 密碼 接著輸入 show databases 這是顯示擁有的資料庫。輸入 s 他會顯示你資料庫的編碼格式。輸入 use test 這個test就是你要修改編碼...

不同方式不同系統編譯main1 c程式

在ubuntu系統下用c語言編寫乙個簡單的輸出 hello word的程式,並編譯有 執行之 請編寫乙個主程式檔案 main1.c 和乙個子程式檔案 sub1.c,要求 子程式sub1.c 包含乙個算術運算函式 float x2x int a,int b 此函式功能為對兩個輸入整型引數做某個運算,將...

python在不同系統下的中文編碼問題

上週在做qq郵箱的模擬登入,在呼叫郵件查詢介面的時候,遇到了查詢字串下中文編碼的問題,本質是python2環境下中文編碼的問題。windows windows下通過cmd開啟python終端,預設的編碼方式是gbk。c windows system32 python python 2.7 13 an...