_mbsdec, _strdec, _wcsdec
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer

_mbsdec, _strdec, _wcsdec

Move a string pointer back one character.

unsigned char *_mbsdec(
   const unsigned char *start,
   const unsigned char *current 
);

Parameters

start
Pointer to first byte of any multibyte character in the source string; start must precede current in the source string.
current
Pointer to first byte of any multibyte character in the source string; current must follow start in the source string.

Return Value

_mbsdec, _strdec and _wcsdec each return a pointer to the character that immediately precedes current; _mbsdec returns NULL if the value of start is greater than or equal to that of current. _tcsdec maps to one of these functions and its return value depends on the mapping.

Remarks

The _mbsdec function returns a pointer to the first byte of the multibyte-character that immediately precedes current in the string that contains start. _mbsdec recognizes multibyte-character sequences according to the multibyte code page currently in use.

Security Note    This API incurs a potential threat brought about by a buffer overrun problem. Buffer overrun problems are a frequent method of system attack, resulting in an unwarranted elevation of privilege. For more information, see Avoiding Buffer Overruns.

Generic-Text Routine Mappings

TCHAR.H routine _UNICODE & _MBCS not defined _MBCS defined _UNICODE defined
_tcsdec _strdec _mbsdec _wcsdec

_strdec and _wcsdec are single-byte character and wide-character versions of _mbsdec. _strdec and _wcsdec are provided only for this mapping and should not be used otherwise.

For more information, see Using Generic-Text Mappings and Generic-Text Mappings.

Requirements

Routine Required header Optional headers Compatibility
_mbsdec <mbstring.h> <mbctype.h> Win 98, Win Me, Win NT, Win 2000, Win XP
_strdec <tchar.h>   Win 98, Win Me, Win NT, Win 2000, Win XP
_wcsdec <tchar.h>   Win 98, Win Me, Win NT, Win 2000, Win XP

For additional compatibility information, see Compatibility in the Introduction.

Libraries

All versions of the C run-time libraries.

Example

The following code snippet shows a use of _tcsdec.

   const TCHAR *str = _T("some text");
   const TCHAR *str2;
   TCHAR *answer;
   str2 = str;
   str2++;
   answer = _tcsdec( str, str2 );

The following code snippet shows a use of _mbsdec.

   char *str = "some text";
   char *str2;
   unsigned char *answer;
   str2 = str; 
   str2++;
   answer = _mbsdec( reinterpret_cast<unsigned char *>( str ), reinterpret_cast<unsigned char *>( str2 ));

See Also

String Manipulation Routines | _mbsinc | _mbsnextc | _mbsninc | Run-Time Routines and .NET Framework Equivalents

Show:
© 2016 Microsoft