Compartilhar via


Índices de byte

Use as dicas a seguir:

  • Trabalhar com um índice em nível de byte em uma cadeia de caracteres apresenta problemas semelhantes aos colocados pela manipulação de ponteiros. Considere este exemplo, que verifica uma cadeia de caracteres em busca de um caractere de barra invertida:

    while ( rgch[ i ] != '\\' )
        i++;
    

    Isso pode indexar um byte final, e não um byte inicial, podendo, portanto, não apontar para um character.

  • Use a função _mbclen para resolver o problema anterior:

    while ( rgch[ i ] != '\\' )
        i += _mbclen ( rgch + i );
    

    Isso indexa corretamente a um byte inicial e, portanto, para um character. A função _mbclen determina o tamanho de um caractere (1 ou 2 bytes).

Confira também

Dicas de programação do MBCS
Último caractere em uma cadeia de caracteres