Skip to content

Latest commit

 

History

History
33 lines (24 loc) · 1.07 KB

byte-indices.md

File metadata and controls

33 lines (24 loc) · 1.07 KB
description title ms.date helpviewer_keywords ms.assetid
Learn more about: Byte Indices
Byte Indices
11/04/2016
MBCS [C++], byte indices
byte indices [C++]
f6e7774a-86c6-41c2-89e3-74fd46432e47

Byte Indices

Use the following tips:

  • Working with a bytewise index into a string presents problems similar to those posed by pointer manipulation. Consider this example, which scans a string for a backslash character:

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

    This might index a trail byte, not a lead byte, and thus it might not point to a character.

  • Use the _mbclen function to solve the preceding problem:

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

    This correctly indexes to a lead byte, hence to a character. The _mbclen function determines the size of a character (1 or 2 bytes).

See also

MBCS Programming Tips
Last Character in a String