在 c 裡常見的 char 代表 1 個 byte,
後來為了引入寬字元, 而有了 2 個 bytes 的 wchar_t,
wchar_t 的定義如下 :
typedef unsigned short wchar_t;
平常我們所用的字串處理函式如下 :
char* str = "hello!"; // 7
len = strlen(str);
當然也有用來處理寬字元字串的函式 :
wchar_t* str = "hello!"; // 14
len = wcslen(str);
為了使程式既能按 ASCII 又能按 Unicode 編譯,而衍伸了通用變數 TCHAR,
在 tchar.h 裡可以看到,當有 #define _UNIOCODE 時
typedef wchar_t TCHAR
反之,
typedef char TCHAR
如此一來,使用通用變數,將會使得程式碼更為一致性。
而通用的字串處理函式如 : l + 函式名稱
len = lstrlen(str);
len = lstrcpy(str);
len = lstrcpyn(str);
len = lstrcat(str);
沒有留言:
張貼留言