共用方式為


Visual C++ 中的 MBCS 支援

在啟用 MBCS 的 Windows 版本上執行時,Visual C++ 開發系統(包括整合式原始程式碼編輯器、偵錯工具和命令列工具)已啟用 MBCS,但記憶體視窗除外。

記憶體視窗不會將資料的位元組解譯為 MBCS 字元,不過能解譯為 ANSI 或 Unicode 字元 ANSI 字元固定為 1 個位元組大小,而 Unicode 字元則是 2 個位元組大小。 使用 MBCS 時,字元可以是 1 個或 2 個位元組大小,解譯則是根據所使用的字碼頁而定。 因此,記憶體視窗很難順利顯示 MBCS 字元, 記憶體視窗不知道哪個位元組是字元的開頭。 開發人員可以在記憶體視窗中檢視位元組值,並查閱資料表中的值,以判斷字元標記法。 這是可能的,因為開發人員知道以原始程式碼為基礎的字串起始位址。

Visual C++ 會接受適用于此動作的雙位元組字元。 這包括對話方塊中的路徑名稱和檔案名,以及 Visual C++ 資源編輯器中的文字專案(例如,對話方塊編輯器中的靜態文字,以及圖示編輯器中的靜態文字專案)。 此外,預處理器會辨識一些雙位元組指示詞,例如語句中的 #include 檔案名,以及 做為 和 data_seg pragmas 的 code_seg 引數。 在原始程式碼編輯器中,會接受批註和字串常值中的雙位元組字元,但不是 C/C++ 語言元素(例如變數名稱)。

支援輸入法編輯器 (IME)

針對使用 MBCS(例如日本)的東亞市場所撰寫的應用程式通常支援 Windows IME 來輸入單位元組和雙位元組字元。 Visual C++ 開發環境包含 IME 的完整支援。

日文鍵盤不直接支援中文字元。 輸入法會將拼音字串,以另一個日文字母(羅馬字、片假名或平假名)輸入成其可能的漢字標記法。 如果模棱兩可,您可以從數個替代方案中選取。 當您選取預期的中文字元時,IME 會將兩 WM_CHAR 則訊息傳遞至控制應用程式。

由 ALT+' 按鍵組合啟動的 IME 會顯示為一組按鈕(指標)和轉換視窗。 應用程式會將視窗放置在文字插入點。 應用程式必須 WM_MOVE 重新置放轉換視窗,以符合目標視窗的新位置或大小來處理 和 WM_SIZE 訊息。

如果您希望應用程式的使用者能夠輸入中文字元,應用程式必須處理 Windows IME 訊息。 如需輸入法程式設計的詳細資訊,請參閱 輸入方法管理員

Visual C++ 偵錯工具

Visual C++ 偵錯工具可讓您在 IME 訊息上設定中斷點。 此外,[記憶體] 視窗可以顯示雙位元組字元。

命令列工具

Visual C++ 命令列工具,包括編譯器、NMAKE 和資源編譯器 (RC.EXE),都已啟用 MBCS。 您可以在編譯應用程式的資源時,使用資源編譯器的 /c 選項來變更預設字碼頁。

若要在原始程式碼編譯時間變更預設地區設定,請使用 #pragma setlocale

圖形化工具

Visual C++ Windows 型工具,例如 Spy++ 和資源編輯工具,完全支援 IME 字串。

另請參閱

多位元組字元集 (MBCS) 的支援
MBCS 程式設計提示