Índices byte
Use as seguintes dicas:
Trabalhando com um índice bytewise em uma seqüência apresenta problemas semelhantes aos causados pela manipulação do ponteiro.Considere este exemplo, verifica uma cadeia de caracteres para um caractere de barra invertida:
while ( rgch[ i ] != '\\' ) i++;
Isso pode indexar um byte de trilha, não é um byte inicial, e portanto não pode apontar para um character.
Use o _mbclen função para solucionar o problema anterior:
while ( rgch[ i ] != '\\' ) i += _mbclen ( rgch + i );
Isso indexa corretamente para um byte inicial, portanto, para um character.O _mbclen função determina o tamanho de um caractere (1 ou 2 bytes).