IsDBCSLeadByte 函式 (winnls.h)

判斷指定的字元是否為系統預設 Windows ANSI 代碼頁的前置位元組, (CP_ACP) 。 前置位元組是代碼頁中 雙位元組位元集 的第一個字節, (DBCS) 。

注意 若要使用不同的代碼頁,您的應用程式應該使用 IsDBCSLeadByteEx 函式。
 

語法

BOOL IsDBCSLeadByte(
  [in] BYTE TestChar
);

參數

[in] TestChar

要測試的字元。

傳回值

如果測試字元可能是前置位元組,則傳回非零值。 如果測試位元不是前置位元組,或它是單一位元組位元元,則函式會傳回 0。 若要取得延伸的錯誤資訊,應用程式可以呼叫 GetLastError

備註

注意 此函式不會驗證尾端位元組是否存在或有效性。 因此, MultiByteToWideChar 可能無法辨識使用 IsDBCSLeadByte 報告作為潛在客戶位元組的應用程式序列。 應用程式可以輕鬆地隨著 MultiByteToWideChar 的結果而變得未同步,可能會導致非預期的錯誤或緩衝區大小不符。
 
一般而言,應用程式應該使用 MultiByteToWideChar 將數據轉換成 UTF-16,並在該編碼中使用它,而不是嘗試對代碼頁數據進行低階操作。

前置位元組值是每個相異 DBCS 的特定值。 某些位元組值可以在單一代碼頁中顯示為 DBCS 字元的前置和尾端位元組。

為了瞭解 DBCS 字串,應用程式通常會從字元串開頭開始,並向前掃描、在遇到前置位元組時持續追蹤,並將下一個字節視為相同字元的尾端部分。 如果應用程式必須備份,它應該使用 CharPrev ,而不是嘗試開發自己的演算法。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows 2000 Server [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 winnls.h (包含 Windows.h)
程式庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

IsDBCSLeadByteEx

MultiByteToWideChar

Unicode 和字元集函式

Unicode 和字元集