This documentation is archived and is not being maintained.

_vscprintf, _vscwprintf

Returns the number of characters in the string referenced by a list of arguments.

int _vscprintf(
   const char *format,
   va_list argptr 
int _vscwprintf(
   const wchar_t *format,
   va_list argptr 


Format-control string.
Pointer to list of arguments.

For more information, see Format Specifications.

Return Value

_vscprintf returns the number of characters that would be generated if the string pointed to by the list of arguments was printed or sent to a file or buffer using the specified formatting codes. The value returned does not include the terminating null character. _vscwprintf performs the same function for wide characters.


Each argument (if any) is converted according to the corresponding format specification in format. The format consists of ordinary characters and has the same form and function as the format argument for printf.

Security Note   Ensure that format is not a user-defined string. For more information, see Avoiding Buffer Overruns.

Generic-Text Routine Mappings

TCHAR.H routine _UNICODE & _MBCS not defined _MBCS defined _UNICODE defined
_vsctprintf _vscprintf _vscprintf _vswprintf


Routine Required header Compatibility
_vscprintf <stdio.h> ANSI, Win 98, Win Me, Win NT, Win 2000, Win XP
_vscwprintf <stdio.h> or <wchar.h> ANSI, Win 98, Win Me, Win NT, Win 2000, Win XP

For additional compatibility information, see Compatibility in the Introduction.


All versions of the C run-time libraries.


See the example for vsprintf.

See Also

Stream I/O Routines | fprintf | printf | scanf | sscanf | vprintf Functions | Run-Time Routines and .NET Framework Equivalents