Mit sprintf() kann man Parameter (args) nach einem bestimmten Muster (format) formatieren lassen. Im Gegensatz zu printf() wird der String nicht sofort ausgegeben, sondern kann in einer Variablen gespeichert werden.
Der Musterstring format enthält Platzhalter, die mit einem Prozentzeichen eingeleitet werden. Die Funktion ersetzt diese Platzhalter durch die entsprechend formatierten Werte aus den nächsten Parametern. Die Platzhalter bestehen aus folgenden Elementen:
Ein optionales Füllzeichen, welches den String nach rechts auffüllt. Dabei kann das Füllzeichen eine Null (0) oder ein Leerzeichen sein. Andere Füllzeichen können durch Voranstellen eines einfachen Hochkommas (') definiert werden. Eine optionale Angabe der Textausrichtung. Voreingestellt ist rechts, bei links muss ein Bindestrich (-) angegeben werden. Ein optionaler Wert für die Längenangabe. Ein optionaler Wert für die Anzahl der Nachkommastellen - wird allerdings nur beim Typ "double" unterstützt. Eine Angabe des Typs (siehe unten)
Folgende Typangaben sind möglich:
• % - Es wird das Prozentzeichen eingesetzt
• b - Der Parameter wird als Integer interpretiert und binär ausgegeben.
• c - Der Parameter wird als Integer interpretiert und als ASCII-Zeichen ausgegeben.
• d - Der Parameter wird als Integer interpretiert und als Dezimalwert ausgegeben.
• f - Der Parameter wird als Double interpretiert und als Fließkommazahl ausgegeben.
• o - Der Parameter wird als Integer interpretiert und als Oktalzahl ausgegeben.
• s - Der Parameter wird als String interpretiert und als String ausgegeben.
• x - Der Parameter wird als Integer interpretiert und als Hexadezimalwert mit Kleinbuchstaben ausgegeben.
• X - Der Parameter wird als Integer interpretiert und als Hexadezimalwert mit Großbuchstaben ausgegeben.