Indici di byte
Usare i suggerimenti seguenti:
L'uso di un indice byte per byte in una stringa presenta problemi simili a quelli rappresentati dalla manipolazione del puntatore. Si consideri questo esempio, che analizza una stringa per individuare un carattere barra rovesciata:
while ( rgch[ i ] != '\\' ) i++;
Ciò potrebbe indicizzare un byte finale, non un byte di lead e quindi potrebbe non puntare a un oggetto
character
.Usare la funzione _mbclen per risolvere il problema precedente:
while ( rgch[ i ] != '\\' ) i += _mbclen ( rgch + i );
In questo modo si esegue correttamente l'indicizzazione a un byte di lead, quindi in un oggetto
character
. La_mbclen
funzione determina le dimensioni di un carattere (1 o 2 byte).
Vedi anche
Suggerimenti sulla programmazione MBCS
Ultimo carattere di una stringa