IsDBCSLeadByte 函式 (winnls.h)
判斷指定的字元是否為系統預設 Windows ANSI 代碼頁的前置位元組, (CP_ACP) 。 前置位元組是代碼頁中 雙位元組位元集 的第一個字節, (DBCS) 。
注意 若要使用不同的代碼頁,您的應用程式應該使用 IsDBCSLeadByteEx 函式。
語法
BOOL IsDBCSLeadByte(
[in] BYTE TestChar
);
參數
[in] TestChar
要測試的字元。
傳回值
如果測試字元可能是前置位元組,則傳回非零值。 如果測試位元不是前置位元組,或它是單一位元組位元元,則函式會傳回 0。 若要取得延伸的錯誤資訊,應用程式可以呼叫 GetLastError。
備註
注意 此函式不會驗證尾端位元組是否存在或有效性。 因此, MultiByteToWideChar 可能無法辨識使用 IsDBCSLeadByte 報告作為潛在客戶位元組的應用程式序列。 應用程式可以輕鬆地隨著 MultiByteToWideChar 的結果而變得未同步,可能會導致非預期的錯誤或緩衝區大小不符。
前置位元組值是每個相異 DBCS 的特定值。 某些位元組值可以在單一代碼頁中顯示為 DBCS 字元的前置和尾端位元組。
為了瞭解 DBCS 字串,應用程式通常會從字元串開頭開始,並向前掃描、在遇到前置位元組時持續追蹤,並將下一個字節視為相同字元的尾端部分。 如果應用程式必須備份,它應該使用 CharPrev ,而不是嘗試開發自己的演算法。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows 2000 Server [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | winnls.h (包含 Windows.h) |
程式庫 | Kernel32.lib |
DLL | Kernel32.dll |