Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Aktivieren oder deaktivieren Sie die Unterstützung des %n-Formats inprintf , _printf_l, wprintf- _wprintf_lFamily-Funktionen.
Syntax
int _set_printf_count_output(
int enable
);
Parameter
enable
Ein Wert ungleich Null zum Aktivieren der %n-Unterstützung , 0 zum Deaktivieren der %n-Unterstützung .
Eigenschaftswert oder Rückgabewert
Der Status der %n-Unterstützung vor dem Aufrufen dieser Funktion: Ungleich Null, wenn %n-Unterstützung aktiviert wurde, 0, wenn sie deaktiviert wurde.
Hinweise
Aus Sicherheitsgründen ist die Unterstützung für den Formatbezeichner "%n " standardmäßig in printf und allen zugehörigen Varianten deaktiviert. Wenn %n in einer printf Formatspezifikation auftritt, besteht das Standardverhalten darin, den ungültigen Parameterhandler aufzurufen, wie in der Parameterüberprüfung beschrieben. Das Aufrufen _set_printf_count_output mit einem Argument ungleich Null führt printfdazu, dass "-family"-Funktionen %n wie in der Formatspezifikationssyntax beschrieben interpretieren: printf und wprintf Funktionen.
Anforderungen
| Routine | Erforderlicher Header |
|---|---|
_set_printf_count_output |
<stdio.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
// 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