Freigeben über


wvsprintfA-Funktion (winuser.h)

Schreibt formatierte Daten mithilfe eines Zeigers auf eine Liste von Argumenten in den angegebenen Puffer. Die Elemente, auf die in der Argumentliste verwiesen wird, werden entsprechend der entsprechenden Formatspezifikation in der Formatsteuerungszeichenfolge konvertiert und in einen Ausgabepuffer kopiert. Die Funktion fügt ein abschließendes NULL-Zeichen an die zeichen an, die sie schreibt, aber der Rückgabewert enthält nicht das abschließende NULL-Zeichen in seiner Zeichenanzahl.

Warnung Verwenden Sie nicht. Erwägen Sie stattdessen die Verwendung einer der folgenden Funktionen: StringCbVPrintf, StringCbVPrintfEx, StringCchVPrintf oder StringCchVPrintfEx. Weitere Informationen finden Sie unter Sicherheitsüberlegungen.
 

Syntax

int wvsprintfA(
  [out] LPSTR   unnamedParam1,
  [in]  LPCSTR  unnamedParam2,
  [in]  va_list arglist
);

Parameter

[out] unnamedParam1

Typ: LPTSTR

Der Puffer, der die formatierte Ausgabe empfangen soll. Die maximale Größe des Puffers beträgt 1.024 Bytes.

[in] unnamedParam2

Typ: LPCTSTR

Die Formatsteuerelementspezifikationen. Zusätzlich zu gewöhnlichen ASCII-Zeichen wird in dieser Zeichenfolge eine Formatspezifikation für jedes Argument angezeigt. Weitere Informationen zur Formatspezifikation finden Sie in der wsprintf-Funktion .

[in] arglist

Typ: va_list

Jedes Element dieser Liste gibt ein Argument für die Formatsteuerelementzeichenfolge an. Die Anzahl, der Typ und die Interpretation der Argumente hängen von den entsprechenden Formatsteuerelementspezifikationen im lpFmt-Parameter ab.

Rückgabewert

Typ: int

Wenn die Funktion erfolgreich ist, ist der Rückgabewert die Anzahl der im Puffer gespeicherten Zeichen, ohne das abschließende NULL-Zeichen zu zählen.

Wenn die Funktion fehlschlägt, ist der Rückgabewert kleiner als die Länge der erwarteten Ausgabe. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Die Funktion kopiert die Formatsteuerelementzeichenfolge Zeichen für Zeichen in den Ausgabepuffer, beginnend mit dem ersten Zeichen in der Zeichenfolge. Wenn eine Formatspezifikation in der Zeichenfolge gefunden wird, ruft die Funktion den Wert des nächsten verfügbaren Arguments ab (beginnend mit dem ersten Argument in der Liste), konvertiert diesen Wert in das angegebene Format und kopiert das Ergebnis in den Ausgabepuffer. Die Funktion kopiert weiterhin Zeichen und erweitert die Formatspezifikationen auf diese Weise, bis sie das Ende der Formatsteuerungszeichenfolge erreicht. Wenn mehr Argumente als Formatspezifikationen vorhanden sind, werden die zusätzlichen Argumente ignoriert. Wenn nicht genügend Argumente für alle Formatspezifikationen vorhanden sind, sind die Ergebnisse nicht definiert.

Hinweis

Der winuser.h-Header definiert wvsprintf als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winuser.h (windows.h einschließen)
Bibliothek User32.lib
DLL User32.dll

Siehe auch

Konzept

Referenz

StringCbPrintf

StringCbPrintfEx

StringCbVPrintf

StringCbVPrintfEx

StringCchPrintf

StringCchPrintfEx

StringCchVPrintf

StringCchVPrintfEx

Zeichenfolgen

wsprintf