Freigeben über


_cprintf_p, _cprintf_p_l, _cwprintf_p, _cwprintf_p_l

Formatiert Daten und gibt diese über die Konsole aus und unterstützt positionelle Parameter in der Formatzeichenfolge.

Wichtig

Diese API kann nicht in Anwendungen verwendet werden, die in Windows-Runtime ausgeführt werden.Weitere Informationen finden Sie unter CRT-Funktionen nicht mit /ZW unterstützt.

int _cprintf_p( 
   const char * format [, 
   argument] ... 
);
int _cprintf_p_l( 
   const char * format,
   locale_t locale [, 
   argument] ... 
);
int _cwprintf_p(
   const wchar * format [, 
   argument] ...
);
int _cwprintf_p_l(
   const wchar * format,
   locale_t locale [,
   argument] ...
);

Parameter

  • format
    Formatsteuerzeichenfolge.

  • argument
    Optionale Parameter.

  • locale
    Das zu verwendende Gebietsschema.

Rückgabewert

Die Anzahl gedruckter Zeichen oder ein negativer Wert im Falle eines Fehlers.

Hinweise

Diese Funktionen formatieren eine Reihe von Zeichen und Werten und geben diese direkt über die Konsole aus, indem sie die Funktionen _putch und _putwch für die Zeichenausgabe verwenden. Jedes argument (falls vorhanden) wird entsprechend der jeweiligen Formatangabe in format konvertiert und ausgegeben. Das Format hat dieselbe Form und Funktion wie der format-Parameter für die printf_p-Funktion. Der Unterschied zwischen _cprintf_p und cprintf_s ist, dass _cprintf_p positionelle Parameter unterstützt, wodurch festgelegt werden kann, in welcher Reihenfolge die Argumente in der Formatzeichenfolge verwendet werden. Weitere Informationen finden Sie unter printf_p-Positionsparameter.

Anders als die fprintf_p-, printf_p- und sprintf_p-Funktionen übersetzen weder _cprintf_p noch _cwprintf_p Zeilenvorschubzeichen bei der Ausgabe in eine Kombination aus Wagenrücklauf und Zeilenvorschub (CR-LF). Ein wichtiger Unterschied ist, dass _cwprintf_p bei der Verwendung in Windows NT Unicode-Zeichen anzeigt. Anders als _cprintf_p verwendet _cwprintf_p die aktuellen Einstellungen des Konsolengebietsschemas.

Die Versionen dieser Funktionen mit dem _l-Suffix sind beinahe identisch, verwenden jedoch den ihnen übergebenen Gebietsschemaparameter anstelle des aktuellen Gebietsschemas.

SicherheitshinweisSicherheitshinweis

Stellen Sie sicher, dass format keine benutzerdefinierte Zeichenfolge ist.

Ebenso wie _cprintf_s und _cwprintf_s überprüfen sie den Eingabezeiger und die Formatzeichenfolge. Wenn format oder argumentNULL sind oder wenn die Formatzeichenfolge ungültige Formatierungszeichen enthält, rufen diese Funktionen den Handler für ungültigen Parameter auf, wie in Parametervalidierung beschrieben. Wenn die weitere Ausführung zugelassen wird, geben diese Funktionen "– 1" zurück und legen errno auf EINVAL fest.

Zuordnung generischer Textroutinen

Tchar.h-Routine

_UNICODE und _MBCS nicht definiert

_MBCS definiert

_UNICODE definiert

_tcprintf_p

_cprintf_p

_cprintf_p

_cwprintf_p

_tcprintf_p_l

_cprintf_p_l

_cprintf_p_l

_cwprintf_p_l

Anforderungen

Routine

Erforderlicher Header

_cprintf_p,_cprintf_p_l

<conio.h>

_cwprintf_p,_cwprintf_p_l

<conio.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Beispiel

// crt_cprintf_p.c
// This program displays some variables to the console
// using the _cprintf_p function.

#include <conio.h>

int main( void )
{
    int         i = -16,
                h = 29;
    unsigned    u = 62511;
    char        c = 'A';
    char        s[] = "Test";

    // Note that console output does not translate
    // \n as standard output does. Use \r\n instead.
    _cprintf_p( "%2$d  %1$.4x  %3$u  %4$c %5$s\r\n", 
                h, i, u, c, s );
}
  

Siehe auch

Referenz

Konsole und Port-E/A

_cscanf, _cscanf_l, _cwscanf, _cwscanf_l

_cscanf_s, _cscanf_s_l, _cwscanf_s, _cwscanf_s_l

_fprintf_p, _fprintf_p_l, _fwprintf_p, _fwprintf_p_l

fprintf_s, _fprintf_s_l, fwprintf_s, _fwprintf_s_l

_printf_p, _printf_p_l, _wprintf_p, _wprintf_p_l

printf_s, _printf_s_l, wprintf_s, _wprintf_s_l

_sprintf_p, _sprintf_p_l, _swprintf_p, _swprintf_p_l

_vfprintf_p, _vfprintf_p_l, _vfwprintf_p, _vfwprintf_p_l

_cprintf_s, _cprintf_s_l, _cwprintf_s, _cwprintf_s_l

_cprintf_s, _cprintf_s_l, _cwprintf_s, _cwprintf_s_l

printf_p-Positionsparameter

printf_p-Positionsparameter

Syntax der Formatangabe: printf- und wprintf-Funktionen