共用方式為


_fprintf_p、_fprintf_p_l、_fwprintf_p、_fwprintf_p_l

將格式化的資料列印至資料流。

int _fprintf_p( 
   FILE *stream,
   const char *format [,
   argument ]...
);
int _fprintf_p_l( 
   FILE *stream,
   const char *format,
   locale_t locale [,
   argument ]...
);
int _fwprintf_p( 
   FILE *stream,
   const wchar_t *format [,
   argument ]...
);
int _fwprintf_p_l( 
   FILE *stream,
   const wchar_t *format,
   locale_t locale [,
   argument ]...
);

參數

  • stream
    FILE 結構的指標。

  • format
    格式控制字串。

  • argument
    選擇性引數。

  • locale
    要使用的地區設定。

傳回值

當發生 I/O 錯誤時,_fprintf_p 和 _fwprintf_p 傳回寫入的字元數或傳回負值。

備註

_fprintf_p格式化並在輸出stream中印出一連串字元和值。 每個函式 argument (如果有的話) 是根據 format 中的對應格式規格進行轉換和輸出。 如果是 _fprintf_p,則 format 引數具有它在 _printf_p的相同語法和用法。 這些函式支援位置參數,就可以變更格式字串所使用的參數順序。 如需位置參數的詳細資訊,請參閱 printf_p 位置參數

_fwprintf_p 是 _fprintf_p 的寬字元版本;在_fwprintf_p中,format 是寬字元字串。 如果資料流是以 ANSI 模式開啟,則這些函式的行為相同。 _fprintf_p 目前不支援輸出到 UNICODE 串流。

這些以 _l 後綴的函式版本除了使用傳入的地區設定以外行為相同。

安全性注意事項安全性提示

確認 format 不是使用者定義的字串。

如果 stream 或 format任一 為 null 指標,或如果有任何未知或格式錯誤的格式規範,則像不安全的版本 (請參閱 fprintf、_fprintf_l、fwprintf、_fwprintf_l),這些函式會驗證它們的參數並叫用無效的參數處理常式,如 參數驗證中所描述的。 如果允許繼續執行,函式回傳 -1 並將 errno 設置為 EINVAL 。

一般文字常式對應

Tchar.h 常式

未定義 _UNICODE and _MBCS

_MBCS 已定義

_UNICODE 已定義

_ftprintf_p

_fprintf_p

_fprintf_p

_fwprintf_p

_ftprintf_p_l

_fprintf_p_l

_fprintf_p_l

_fwprintf_p_l

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

需求

功能

必要的標頭

_fprintf_p, _fprintf_p_l

<stdio.h>

_fwprintf_p, _fwprintf_p_l

<stdio.h> 或 <wchar.h>

如需更多關於相容性的資訊,請參閱入門介紹中的 相容性 (Compatibility)

範例

// crt_fprintf_p.c
// This program uses _fprintf_p to format various
// data and print it to the file named FPRINTF_P.OUT. It
// then displays FPRINTF_P.OUT on the screen using the system
// function to invoke the operating-system TYPE command.
// 

#include <stdio.h>
#include <process.h>


int main( void )
{
    FILE    *stream = NULL;
    int     i = 10;
    double  fp = 1.5;
    char    s[] = "this is a string";
    char    c = '\n';

    // Open the file
    if ( fopen_s( &stream, "fprintf_p.out", "w" ) == 0)
    {
        // Format and print data
        _fprintf_p( stream, "%2$s%1$c", c, s );
        _fprintf_p( stream, "%d\n", i );
        _fprintf_p( stream, "%f\n", fp );

        // Close the file
        fclose( stream );
    }

    // Verify our data
    system( "type fprintf_p.out" );
}
  

.NET Framework 對等用法

System::IO::StreamWriter::Write

請參閱

參考

資料流 I/O

_cprintf、_cprintf_l、_cwprintf、_cwprintf_l

fscanf、_fscanf_l、fwscanf、_fwscanf_l

sprintf、_sprintf_l、swprintf、_swprintf_l、__swprintf_l

printf_p 位置參數

_cprintf_p、_cprintf_p_l、_cwprintf_p、_cwprintf_p_l

_cprintf_s、_cprintf_s_l、_cwprintf_s、_cwprintf_s_l

printf_p 位置參數

fscanf_s、_fscanf_s_l、fwscanf_s、_fwscanf_s_l