_set_printf_count_output
, , _wprintf_l
-family 関数の %n 形式のwprintf
printf
_printf_l
サポートを有効または無効にします。
構文
int _set_printf_count_output(
int enable
);
パラメーター
enable
%n のサポートを有効にする場合は 0 以外の値、%n のサポートを無効にする場合は 0。
プロパティ値または戻り値
この関数を呼び出す前の %n サポートの状態。%n サポートが有効だった場合は 0 以外。無効だった場合は 0。
解説
セキュリティ上の理由から、%n 書式指定子のサポートは既定でprintf
無効になり、そのすべてのバリアントが無効になります。 形式指定で %n が検出された場合、既定の動作では、「パラメーターの検証」の説明に従って無効なパラメーター ハンドラーが呼び出されます。printf
0 以外の引数を指定して呼び出_set_printf_count_output
すとprintf
、「書式指定構文: printf
およびwprintf
関数」で説明されているように、-family 関数は %n を解釈します。
必要条件
ルーチンによって返される値 | 必須ヘッダー |
---|---|
_set_printf_count_output |
<stdio.h> |
互換性の詳細については、「 Compatibility」を参照してください。
例
// crt_set_printf_count_output.c
#include <stdio.h>
int main()
{
int e;
int i;
e = _set_printf_count_output( 1 );
printf( "%%n support was %sabled.\n",
e ? "en" : "dis" );
printf( "%%n support is now %sabled.\n",
_get_printf_count_output() ? "en" : "dis" );
printf( "12345%n6789\n", &i ); // %n format should set i to 5
printf( "i = %d\n", i );
}
%n support was disabled.
%n support is now enabled.
123456789
i = 5
関連項目
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示