MFC介面程式設計基礎(04) Windows字符集

2021-09-02 20:35:29 字數 1074 閱讀 6299

mfc中的text巨集可以自動適應字元型別,如果定義了預處理器程式符號_unicode,那麼編譯器將使用unicode字元,如果沒用定義該預處理器程式符號,那麼編譯器將使用ansi字元。

使用text巨集修飾字串常量就足以使乙個應用程式完全不關心其字符集嗎?

回答是並不一定,我們還需要做以下操作:

字符集

老外:乙個字元對應乙個位元組(多位元組)

中文:乙個字元對應多個位元組(寬位元組) unicode 具體 utf-8 (1個對應3個),gbk(1個對應2個)

注:vs的屬性-配置屬性-常規-字符集 處可設定。

messagebox(「aaa」); //這裡的"aaa"是多位元組字元

messagebox(l"aaa"); //多位元組轉寬位元組,此時,字符集設定處應為 unicode 字符集

messagebox(text(「aaa」));

//text是自適應編碼的轉換,可適應多字符集與unicode字符集的任乙個

//同樣tchar 也是 自適應編碼的轉換。

統計多字串的長度

int num = 0;

char *p = 「aaaa」;

num = strlen(p);

統計寬位元組的字串長度

wchar_t *p2 = l"bbbb"; //宣告寬字元

unm = wcslen(p2); //統計字元長度

char * 與 cstring 之間的轉換

char * >>> cstring

char *p3 = 「ccc」;

cstring str = cstring(p3);

cstring >>> char *

cstring str = 「ccc」;

cstringa tmp;

tmp = str;

char *pp = tmp.getbuffer();

//工程在設定多位元組模式下cstring定 位為cstringa ,寬位元組為cstringw

MFC介面程式設計基礎(23) 建立並註冊資料來源

在建立資料庫應用程式之前,先要準備好資料來源。下面我們假設資料庫應用程式要連線的資料庫hotel.accdb存放在c盤根目錄下,該資料庫下有一張tblcustomer的表,如下圖所示 在windows作業系統的控制面板中,可以找到資料來源odbc管理器的圖示,如下圖所示為windows7中的odbc...

程式設計思想基礎學習(介面)

public class processor object process object input class upcase extends processor class downcase extends processor class splitter extends processor pu...

Linux學習筆記04 Shell基礎程式設計

文字檔案,通常以.sh結尾,存放linux命令的集合,能被shell解釋執行 組成 一段linux命令 shell命令 控制語句和注釋語句等。第一行 注釋行 開頭 變數 命名 以字母下劃線開頭,後面可以跟字母下劃線和數字,區分大小寫。等號左右不能有空格。分類 分為環境變數和本地變數。本地變數 只能在...