Dela via


Byteindexer

Använd följande tips:

  • Att arbeta med ett bytevis index i en sträng innebär problem som liknar dem som orsakas av pekarmanipulering. Tänk på det här exemplet som söker igenom en sträng efter ett omvänt snedstreckstecken:

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

    Detta kan indexeras som en spårningsbyte, inte en leadbyte, och därför kanske den inte pekar på en character.

  • Använd funktionen _mbclen för att lösa föregående problem:

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

    Detta indexerar korrekt till en lead-byte, därav till en character. Funktionen _mbclen avgör storleken på ett tecken (1 eller 2 byte).

Se även

MBCS-programmeringstips
Sista tecknet i en sträng