Bagikan melalui


_set_printf_count_output

Aktifkan atau nonaktifkan dukungan format %n dalam printffungsi , , wprintf_printf_l, -_wprintf_lfamily.

Sintaks

int _set_printf_count_output(
   int enable
);

Parameter

enable
Nilai bukan nol untuk mengaktifkan dukungan %n , 0 untuk menonaktifkan %n dukungan.

Nilai properti atau nilai pengembalian

Status dukungan %n sebelum memanggil fungsi ini: bukan-nol jika %n dukungan diaktifkan, 0 jika dinonaktifkan.

Keterangan

Karena alasan keamanan, dukungan untuk penentu format %n dinonaktifkan secara default di printf dan semua variannya. Jika %n ditemui dalam printf spesifikasi format, perilaku defaultnya adalah memanggil handler parameter yang tidak valid seperti yang dijelaskan dalam Validasi parameter. Memanggil _set_printf_count_output dengan argumen bukan nol akan menyebabkan printffungsi -family menginterpretasikan %n seperti yang dijelaskan dalam Sintaks spesifikasi format: printf dan wprintf fungsi.

Persyaratan

Rutin Header yang diperlukan
_set_printf_count_output <stdio.h>

Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.

Contoh

// 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

Lihat juga

_get_printf_count_output