_scprintf, _scprintf_l, _scwprintf, _scwprintf_l
Gibt die Anzahl von Zeichen in der formatierten Zeichenfolge zurück.
int _scprintf(
const char *format [,
argument] ...
);
int _scprintf_l(
const char *format,
locale_t locale [,
argument] ...
);
int _scwprintf(
const wchar_t *format [,
argument] ...
);
int _scwprintf_l(
const wchar_t *format,
locale_t locale [,
argument] ...
);
Parameter
format
Formatsteuerzeichenfolge.argument
Optionale Argumente.locale
Das zu verwendende Gebietsschema.
Weitere Informationen finden Sie unter Formatangaben.
Rückgabewert
Gibt die Anzahl von Zeichen zurück, die generiert werden, wenn die Zeichenfolge in einer Datei oder auf einen Puffer mit der angegebenen Formatierungscodes gedruckt werden oder gesendet werden sollen.Der zurückgegebene Wert schließt nicht die NULL._scwprintf führt die gleiche Aufgabe für Breitzeichen.
Wenn format ein NULL Zeiger ist, wird der Ereignishandler aufgerufen, z. B. ungültige Parameter in Parametervalidierungbeschrieben.Wenn die Ausführung ermöglicht wird, um fortzufahren, geben diese Funktionen festlegen und -1 errno zu EINVALzurück.
Weitere Informationen über diese und andere Fehlercodes finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr.
Hinweise
Jedes argument (falls vorhanden) wird gemäß der entsprechenden Formatelement in formatkonvertiert.Das Format besteht aus normalen Zeichen und weist das gleiche Funktion wie das Formular, und format-Argument für printf.
Die Versionen dieser Funktionen mit dem _l Suffix sind identisch, mit der Ausnahme, dass sie verwenden den Gebietsschemaparameter, der anstelle des aktuellen Threads gebietsschemas übergeben wird.
Sicherheitshinweis |
---|
Stellen Sie sicher, dass format keine benutzerdefinierte Zeichenfolge ist. |
Zuweisung generischer Textroutinen
Tchar.h-Routine |
_UNICODE als auch _MBCS nicht definiert |
_MBCS definieren |
_UNICODE definiert |
---|---|---|---|
_sctprintf |
_scprintf |
_scprintf |
_scwprintf |
_sctprintf_l |
_scprintf_l |
_scprintf_l |
_scwprintf_l |
Anforderungen
Routine |
Erforderlicher Header |
---|---|
_scprintf, _scprintf_l |
<stdio.h> |
_scwprintf, _scwprintf_l |
<stdio.h> oder <wchar.h> |
Weitere Informationen finden Sie unter Kompatibilität Kompatibilität in der Einführung.
Beispiel
// crt__scprintf.c
#define _USE_MATH_DEFINES
#include <stdio.h>
#include <math.h>
#include <malloc.h>
int main( void )
{
int count;
int size;
char *s = NULL;
count = _scprintf( "The value of Pi is calculated to be %f.\n",
M_PI);
size = count + 1; // the string will need one more char for the null terminator
s = malloc(sizeof(char) * size);
sprintf_s(s, size, "The value of Pi is calculated to be %f.\n",
M_PI);
printf("The length of the following string will be %i.\n", count);
printf("%s", s);
free( s );
}
Siehe auch
Referenz
fprintf, _fprintf_l, fwprintf, _fwprintf_l
printf, _printf_l, wprintf, _wprintf_l
scanf, _scanf_l, wscanf, _wscanf_l