Bajtové indexy
Postupujte následovně:
Práce s bajtově orientovaným indexem v řetězci představuje problémy podobné problémům při manipulaci s ukazatelem.Vezměme si tento příklad, který prohledává řetězce po znak zpětného lomítka:
while ( rgch[ i ] != '\\' ) i++;
To může být index druhého bajtu, nikoli úvodního bajtu, a proto nemusí ukazovat na character.
Použijte funkci _mbclen k řešení předchozího problému:
while ( rgch[ i ] != '\\' ) i += _mbclen ( rgch + i );
Ta správně indexuje úvodní bajt, tedy character.Tato funkce _mbclen určuje velikost znaku (1 nebo 2 bajty).