Share via


_strinc, _wcsinc, _mbsinc, _mbsinc_l

 

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at _strinc, _wcsinc, _mbsinc, _mbsinc_l.

Advances a string pointer by one character.

Important

_mbsinc and _mbsinc_l cannot be used in applications that execute in the Windows Runtime. For more information, see CRT functions not supported with /ZW.

Syntax

char *_strinc(  
   const char *current,  
   _locale_t locale  
);  
wchar_t *_wcsinc(  
   const wchar_t *current,  
   _locale_t locale  
);  
unsigned char *_mbsinc(  
   const unsigned char *current   
);  
unsigned char *_mbsinc_l(  
   const unsigned char *current,  
   _locale_t locale  
);  
  

Parameters

current
Character pointer.

locale
Locale to use.

Return Value

Each of these routines returns a pointer to the character that immediately follows current.

Remarks

The _mbsinc function returns a pointer to the first byte of the multibyte character that immediately follows current. _mbsinc recognizes multibyte-character sequences according to the multibyte code page that's currently in use; _mbsinc_l is identical except that it instead uses the locale parameter that's passed in. For more information, see Locale.

The generic-text function _tcsinc, defined in Tchar.h, maps to _mbsinc if _MBCS has been defined, or to _wcsinc if _UNICODE has been defined. Otherwise, _tcsinc maps to _strinc. _strinc and _wcsinc are single-byte-character and wide-character versions of _mbsinc. _strinc and _wcsinc are provided only for this mapping and should not be used otherwise. For more information, see Using Generic-Text Mappings and Generic-Text Mappings.

If current is NULL, the invalid parameter handler is invoked, as described in Parameter Validation. If execution is allowed to continue, this function returns EINVAL and sets errno to EINVAL.

Important

These functions might be vulnerable to buffer overrun threats. Buffer overruns can be used for system attacks because they can cause an unwarranted elevation of privilege. For more information, see Avoiding Buffer Overruns.

Requirements

Routine Required header
_mbsinc <mbstring.h>
_mbsinc_l <mbstring.h>
_strinc <tchar.h>
_wcsinc <tchar.h>

For more compatibility information, see Compatibility.

.NET Framework Equivalent

Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

See Also

String Manipulation
_strdec, _wcsdec, _mbsdec, _mbsdec_l
_strnextc, _wcsnextc, _mbsnextc, _mbsnextc_l
_strninc, _wcsninc, _mbsninc, _mbsninc_l