Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Use the following tips:
Point to lead bytes, not trail bytes. It is usually unsafe to have a pointer to a trail byte. It is usually safer to scan a string forward rather than in reverse.
There are pointer increment/decrement functions and macros available that move over a whole character:
sz1++;becomes:
sz1 = _mbsinc( sz1 );The _mbsinc and _mbsdec functions correctly increment and decrement in character units, regardless of the character size.
For decrements, you need a pointer to the head of the string, as in the following:
sz2--;becomes:
sz2 = _mbsdec( sz2Head, sz2 );Alternatively, your head pointer could be to a valid character in the string, such that:
sz2Head < sz2You must have a pointer to a known valid lead byte.
You might want to maintain a pointer to the previous character for faster calls to _mbsdec.