Índices de byte
Use as dicas a seguir:
Trabalhando com um índice de bytewise em uma cadeia de caracteres enfrentar problemas semelhantes a levantados pela manipulação do ponteiro. Considere este exemplo, que examina uma cadeia de caracteres para um caractere de barra invertida:
while ( rgch[ i ] != '\\' ) i++;
Isso pode indexar um byte final, não um byte inicial, e assim não pode apontar a character.
Use a função de _mbclen para resolver o problema anterior:
while ( rgch[ i ] != '\\' ) i += _mbclen ( rgch + i );
Isso corretamente índices em um byte inicial, por isso a character. A função de _mbclen determina o tamanho de um caractere (1 ou 2 bytes).