_vscprintf_p, _vscprintf_p_l, _vscwprintf_p, _vscwprintf_p_l
返回字符数在格式化字符串中使用指针参数列表,并且能够指定参数的顺序。
int _vscprintf_p(
const char *format,
va_list argptr
);
int _vscprintf_p _l(
const char *format,
locale_t locale,
va_list argptr
);
int _vscwprintf_p (
const wchar_t *format,
va_list argptr
);
int _vscwprintf_p _l(
const wchar_t *format,
locale_t locale,
va_list argptr
);
参数
format
窗体控件字符串。argptr
列表的指针参数。locale
使用的区域设置。
有关更多信息,请参见 格式规范。
返回值
_vscprintf_p 返回要生成的字符数,如果该字符串指向由参数列表打印的或发送到文件或缓冲区使用指定的格式代码。 返回的值不包括终止 null 字符)。 _vscwprintf_p 执行宽字符的相同功能。
备注
这些函数与 _vscprintf 和 _vscwprintf 唯一不同之处在于它们支持能够指定参数的顺序。 有关更多信息,请参见 printf_p位置参数。
这些功能的版本与 _l 后缀的相同,只不过它们使用区域设置参数而不是当前线程区域设置。
如果 format 是 null 指针,无效参数调用处理程序,如 参数验证所述。 如果执行允许继续,函数返回 -1 并将 errno 到 EINVAL。
安全说明 |
---|
请确保,如果 format 是用户定义的字符串,它是为终止 null 并具有正确的参数数目和类型。有关更多信息,请参见 避免缓冲区溢出。 |
一般文本例程映射
TCHAR.H 实例 |
未定义的 _UNICODE _MBCS |
定义的 _MBCS |
定义的 _UNICODE |
---|---|---|---|
_vsctprintf_p |
_vscprintf_p |
_vscprintf_p |
_vscwprintf_p |
_vsctprintf_p_l |
_vscprintf_p_l |
_vscprintf_p_l |
_vscwprintf_p_l |
要求
实例 |
必需的头 |
---|---|
_vscprintf_p, _vscprintf_p_l |
stdio.h |
_vscwprintf_p, _vscwprintf_p_l |
stdio.h 或 wchar.h |
有关其他的兼容性信息,请参见中介绍的 兼容性 。
示例
为 vsprintf参见示例。