Condividi tramite


Funzione IsDBCSLeadByteEx (winnls.h)

Determina se un carattere specificato è potenzialmente un byte di lead. Un byte iniziale è il primo byte di un carattere a due byte in un set di caratteri a byte doppio (DBCS) per la tabella codici.

Sintassi

BOOL IsDBCSLeadByteEx(
  [in] UINT CodePage,
  [in] BYTE TestChar
);

Parametri

[in] CodePage

Identificatore della tabella codici utilizzata per controllare gli intervalli di byte dei lead. Questo parametro può essere uno degli identificatori della tabella codici definiti in Costanti Unicode e Set di caratteri o uno dei valori predefiniti seguenti. Questa funzione convalida i valori dei byte lead solo nelle tabelle codici 932, 936, 949, 950 e 1361.

Valore Significato
CP_ACP
Usa la tabella codici ANSI di Windows predefinita del sistema.
CP_MACCP
Utilizzare la tabella codici Macintosh predefinita del sistema.
CP_OEMCP
Usare la tabella codici OEM predefinita del sistema.
CP_THREAD_ACP
Usare la tabella codici ANSI di Windows per il thread corrente.

[in] TestChar

Carattere da testare.

Valore restituito

Restituisce un valore diverso da zero se il byte è un byte lead. La funzione restituisce 0 se il byte non è un byte iniziale o se il carattere è un carattere a byte singolo. Per ottenere informazioni sull'errore estese, l'applicazione può chiamare GetLastError.

Commenti

Nota Questa funzione non convalida la presenza o la validità di un byte trail. Pertanto, MultiByteToWideChar potrebbe non riconoscere una sequenza che l'applicazione che usa IsDBCSLeadByte segnala come byte lead. L'applicazione può diventare facilmente non sincronizzata con i risultati di MultiByteToWideChar, causando potenzialmente errori imprevisti o mancate corrispondenze delle dimensioni del buffer.
 
In generale, invece di tentare una manipolazione di basso livello dei dati della tabella codici, le applicazioni devono usare MultiByteToWideChar per convertire i dati in UTF-16 e usarli in tale codifica.

I valori dei byte lead sono specifici di ogni DBCS distinto. Alcuni valori di byte possono essere visualizzati in una singola tabella codici come byte iniziale e finale di un carattere DBCS. Pertanto, IsDBCSLeadByteEx può indicare solo un potenziale valore di byte lead.

Per avere un senso di una stringa DBCS, un'applicazione inizia normalmente all'inizio della stringa e analizza in avanti, tenendo traccia quando rileva un byte di lead e considerando il byte successivo come parte finale dello stesso carattere. Per eseguire il backup, l'applicazione deve usare CharPrevExA anziché tentare di sviluppare il proprio algoritmo.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione winnls.h (include Windows.h)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

MultiByteToWideChar

Funzioni unicode e set di caratteri

Set di caratteri e Unicode

WideCharToMultiByte