BLATT   >   Grundlagen   >   C-Library Arbeitsmaterialien  |  Grundlagen  |  ÖH-Wahlen  |  Statistiken  |  Unirecht  
    ▸ Übersichten       ▸ Astronomie       ▸ C-Library       ▸ Digitales       ▸ Mathematik       ▸ Periodensystem
Übersichten
    • Größenvorsätze
    • SI-Basisgrößen
    • abgeleitete Größen
    • Konstanten
    • sonstige Einheiten
    • Greek Chars
    • Einheitskonten
    • Funktionsgrafik
    • Wellenformen
    • Zeichensatz

Astronomie
    • Astrophysik
    • Sonnensystem
    • Sternenklassen

C-Library
    • math.h
    • stdio.h
    • stdlib.h
    • string.h
    • time.h

Digitales
    • Aussagelogik
    • Flip-Flops
    • Decoder

Mathematik
    • Algebra
    • Geometrie
    • Trigonometrie
    • Differenzieren
    • Integrieren

Periodensystem
    • Übersicht
    • alphabetisch
    • Aggregatzustand
    • Metall-Eigenschaft
    • Säure-Eigenschaft

Wörterbücher
C-Library

stdio.h     sprintf     formatierte Daten in einen String schreiben


Format:int sprintf (char * buffer, const char * format [, argument , ...] );
 
Bedeutung:Schreibt einen Datensatz in den angegebenen Puffer.
Parameter:buffer: Puffer, wo der berechnete String gespeichert werden soll
format: String, der die Daten enthält (siehe Tabelle)
argument: optionale Parameter
Rückgabewert:    Bei Erfolg die Anzahl der ausgegebenen Zeichen, ansonsten eine negative Zahl.


Format-Tabelle

Prototype: %[flags][width][.precision][modifiers]type

TypeBedeutung
cZeichen
dvorzeichenbahafteter Integer
ewissenschaftliche Notion   (bspw.: 1.2345e6)
Ewissenschaftliche Notion   (bspw.: 1.2345E6)
fFließkommaformat
gkürzere Nation von e und f
Gkürzere Nation von E und f
ovorzeichenbehaftete Oktalzahl
sString (Kette von Zeichen)
uvorzeichenloser Integer
xvorzeichenloser hexadezimaler Integer (Kleinbuchstaben)
Xvorzeichenloser hexadezimaler Integer (Großbuchstaben)  
pAdresszeiger   (bspw.: A000:0040)
nohne Anzeige (Zeiger auf einen Integer, wo die Anzahl der ausgegebenen Zeichen gespeichert wird)
FlagBedeutung
-linksbündig mit Weite (Defaultwert ist rechtsbündig)
+Vorzeichen wird immer ausgegeben (bspw.: +1234)
blankbei positiven Werten wird ein Leerzeichen vor der Zahl ausgegeben
#Bei o, x oder X: wird "0", "0x" bzw. "0X" vor der Zahl ausgegeben
Bei e, E oder f: wird ein Komma ausgegeben, auch wenn die Zahl hinter dem Komma lauter Nullen hat
Bei g oder G: sowie bei e oder E, jedoch wird eine Null vor dem Komma mitangegeben
widthBedeutung
numberMinimale Anzahl an auszugebenden Zeichen. Ist der Wert kürzer, wir der Rest mit Leerzeichen ausgefüllt.
0numberSo wie number, jedoch werden statt der Leerzeichen "0"en ausgegeben.
*Weite wird durch ein Integer errechnet (siehe .precision)
.precisionBedeutung
.numberBei d, i, o, u, x, oder X: minimale Anzahl an Ziffern. Bei kürzeren Wert wird der Rest mit Leerzeichen aufgefüllt.
Bei e, E, oder f: Anzahl von Stellen nach dem Komma
Bei g oder G: Anzahl signifikanter Ziffern
Bei s: maximale Anzahl an Zeichen
Bei c: kein Effekt
modifierBedeutung
hArgument wird als short int interpretiert
lArgument wird bei den Integertypen als long int und bei Floatingtypen als double interpretiert
LArgument wird bei Floatingtypen als long double interpretier


Beispiel:

#include <stdio.h>
int main ()
{
    char buffer [50];
    int n, a=5, b=4;
    n=sprintf (buffer, "%d plus %d ist %d", a, b, a+b);
    printf ("[%s] ist ein %d Zeichen grosser String\n",buffer,n);
    return 0;
}