建議使用 Visual Studio 2017

_vprintf_p、_vprintf_p_l、_vwprintf_p、_vwprintf_p_l

 

如需 Visual Studio 2017 的最新文件請參閱 Visual Studio 2017 文件

寫入格式化的輸出所使用的引數清單的指標,並可讓您指定在其中使用的引數的順序。

int _vprintf_p(  
   const char *format,  
   va_list argptr   
);  
int _vprintf_p_l(  
   const char *format,  
   locale_t locale,  
   va_list argptr   
);  
int _vwprintf_p(  
   const wchar_t *format,  
   va_list argptr   
);  
int _vwprintf_p_l(  
   const wchar_t *format,  
   locale_t locale,  
   va_list argptr   
);  

參數

format
格式規格。

argptr
引數清單的指標。

locale
要使用的地區設定。

如需詳細資訊,請參閱 格式規格

_vprintf_p_vwprintf_p傳回寫入的字元數目,輸出錯誤發生時,不包括結束的 null 字元或負數值。

這些函式會採用的指標引數清單,然後格式化並寫入至指定的資料stdout。 這些函式不同vprintf_svwprintf_s只在於它們支援讓您指定在其中使用的引數的順序。 如需詳細資訊,請參閱printf_p 位置參數

_vwprintf_p是寬字元版本的_vprintf_p; 兩個函式的 ANSI 模式開啟資料流時,如果相同行為。 _vprintf_p目前不支援輸出成 UNICODE 資料流。

這些有 _l 尾碼的函式版本是一樣的,不同之處在於會使用傳入的地區設定,而不使用目前的執行緒地區設定。

System_CAPS_ICON_important.jpg 重要

確認 format 不是使用者定義的字串。 如需詳細資訊,請參閱 Avoiding Buffer Overruns (避免緩衝區滿溢)

如果format是 null 指標,或如果格式字串包含無效的格式字元、 無效參數處理常式叫用時,所述參數驗證。 若允許繼續執行,函式會傳回 -1,並將 errno 設為 EINVAL

一般文字常式對應

TCHAR.H 常式未定義 _UNICODE 和 _MBCS_MBCS 已定義_UNICODE 已定義
_vtprintf_p_vprintf_p_vprintf_p_vwprintf_p
_vtprintf_p_l_vprintf_p_l_vprintf_p_l_vwprintf_p_l
常式必要的標頭選擇性標頭
_vprintf_p, _vprintf_p_l<stdio.h> 及 <stdarg.h><varargs.h>*
_vwprintf_p, _vwprintf_p_l<stdio.h> 或 <wchar.h> 及 <stdarg.h><varargs.h>*

*所需的 UNIX V 相容性。

Windows 8.x 市集 應用程式不支援主控台。 與主控台 (stdinstdoutstderr) 關聯的標準資料流控制代碼必須重新導向,之後 C 執行階段函式才能在 Windows 8.x 市集 應用程式中使用它們。 如需其他相容性資訊,請參閱 相容性

System::Console::Write

資料流 I/O
vprintf 函式
_fprintf_p、 _fprintf_p_l、 _fwprintf_p、 _fwprintf_p_l
_printf_p、 _printf_p_l、 _wprintf_p、 _wprintf_p_l
_sprintf_p、 _sprintf_p_l、 _swprintf_p、 _swprintf_p_l
vsprintf_s、 _vsprintf_s_l、 vswprintf_s、 _vswprintf_s_l
va_arg、 va_copy、 va_end、 va_start
_vfprintf_p、 _vfprintf_p_l、 _vfwprintf_p、 _vfwprintf_p_l
_printf_p、 _printf_p_l、 _wprintf_p、 _wprintf_p_l
printf_p 位置參數

顯示: