Provided by: manpages-de-dev_0.10-1_all bug

BEZEICHNUNG

       strftime - formatiert Datum und Uhrzeit

       Diese  Handbuchseite ist eventuell veraltet. Im Zweifelsfall ziehen Sie
       die englischsprachige Handbuchseite zu Rate, indem Sie

              man -LC 3 strftime

       eingeben.

ÜBERSICHT

       #include <time.h>

       size_t strftime(char *s, size_t max, const char *format,
                           const struct tm *tm);

BESCHREIBUNG

       Die Funktion strftime() formatiert die Zeit tm in das Format format und
       schreibt das Format in das Feld s der Größe max.

       Normale  Zeichen  im  Format  werden  ohne  Konvertierung in s kopiert.
       Konvertierungsanweisungen werden durch »%«  charakterisiert  und  in  s
       folgendermaßen geschrieben:

       %a     Der abgekürzte Wochentag abhängig von der momentanen Locale.

       %A     Der gesamte Wochentag abhängig von der momentanen Locale.

       %b     Der abgekürzte Monatsname abhängig von der momentanen Locale.

       %B     Der volle Monatsname abhängig von der momentanen Locale.

       %c     Das   bevorzugte   Datums-   und   Uhrzeit-Repräsentation   laut
              Einstellungen der momentanen Locale.

       %C     Das Jahrhundert als zweistellige Zahl.

       %d     Der Tag im Monat als Dezimalzahl (01 - 31).

       %D     Äquivalent zu %m/%d/%y. (US-amerikanisches  Format.  In  anderen
              Ländern  ist  %d/%m/%y  durchaus  üblich  .  In  internationalem
              Kontext ist dieses Format  daher  mehrdeutig  und  sollte  nicht
              verwendet werden.) (SU)

       %e     Wie  %d,  der  Tag  im Monat als Dezimalzahl, aber eine führende
              Null ist durch ein Leerzeichen ersetzt. (SU)

       %E     Modifikator: Alternatives Format benutzen, s.u. (SU)

       %g     Wie %G, aber ohne das Jahrhundert, also mit  zweistelligem  Jahr
              (00-99). (TZ)

       %G     Das  Jahr laut ISO 8601 mit dem Jahrhundert als Dezimalzahl. Das
              vierstellige Jahr, das zu ISO-Wochennummer (siehe %V) passt.  Es
              hat  dasselbe  Format  und denselben Wert wie %y, nur dass, wenn
              die  ISO-Wochennummer  zum  vorhergehenden  oder  nächsten  Jahr
              gehört, dieses Jahr stattdessen benutzt wird. (TZ)

       %h     Äquivalent zu %b. (SU)

       %H     Die Stunde im 24h-Format als Ganzzahl (00 - 23).

       %I     Die Stunde im 12h-Format als Ganzzahl (01 - 12).

       %j     Der Tag im Jahr als Ganzzahl (001 - 366).

       %k     Die Stunde im 24h-Format als Ganzzahl (0 - 23); einzelne Ziffern
              haben ein vorangestelltes Leerzeichen. (Siehe %H.) (TZ)

       %l     Die Stunde im 12h-Format als Ganzzahl (0 - 12); einzelne Ziffern
              haben ein vorangestelltes Leerzeichen. (Siehe %I.) (TZ)

       %m     Der Monat als Ganzzahl (01 - 12).

       %M     Die Minute als Ganzzahl (00 - 59).

       %n     Ein Zeilenvorschub. (SU)

       %O     Modifikator: Alternatives Format benutzen, s.u. (SU)

       %p     Entweder  »AM«  oder »PM«, je nach der übergebenen Uhrzeit, oder
              die zugehörigen Zeichenketten in der momentanen  Locale.  Mittag
              erhält »PM«, Mitternacht »AM«.

       %P     Wie %p, aber in Kleinbuchstaben. (GNU)

       %r     Zeit  in  AM/PM-Notation; in der POSIX-Locale ist das äquivalent
              zu »%I:%M:%S %p«. (SU)

       %R     Zeit in 24h-Notation (%H:%M). (SU) Für eine Version mit Sekunden
              siehe %T.

       %s     Die  Zahl  der  Sekunden  seit  der Epoche, also seit 1970-01-01
              00:00:00 UTC. (TZ)

       %S     Die Sekunde als Ganzzahl (00 - 61).

       %t     Ein Tabulatorzeichen. (SU)

       %T     Zeit in 24h-Notation (%H:%M:%S). (SU)

       %u     Der Tag der Woche als Zahl von 1 bis 7, mit Montag als 1.  Siehe
              auch %w. (SU)

       %U     Die  Wochennummer  des  aktuellen Jahres als Ganzzahl von 00 bis
              53, beginnend mit dem ersten Sonntag als erster Tag  der  ersten
              Woche. Siehe auch %V und %W.

       %V     Die  Wochennummer  nach ISO 8601:1988 als Dezimalzahl von 01 bis
              53, wobei Woche 1 die erste Woche ist, die wenigstens 4 Tage  im
              laufenden  Jahr  hat,  mit  Montag als dem ersten Tag der Woche.
              Siehe auch %U und %W. (SU)

       %w     Der Tag der Woche als Zahl von 0 bis 6, mit Sonntag als 0. Siehe
              auch %u.

       %W     Die  Wochennummer  des  aktuellen Jahres als Ganzzahl von 00 bis
              53, beginnend mit dem ersten Montag als erster  Tag  der  ersten
              Woche.

       %x     Die  bevorzugte  Datums-Repräsentation  ohne  die  Zeit  in  der
              momentanen Locale.

       %X     Die bevorzugte Uhrzeit-Repräsentation  ohne  das  Datum  in  der
              momentanen Locale.

       %y     Das Jahr als Ganzzahl ohne das Jahrhundert (00 - 99).

       %Y     Das Jahr als Ganzzahl mit dem Jahrhundert.

       %z     Die   Zeitzone   als   Stundendifferenz  zu  GMT.  Benötigt,  um
              RFC822-konforme Datumsangaben zu erhalten (mit  »%a,  %d  %b  %Y
              %H:%M:%S %z«). (GNU)

       %Z     Die Zeitzone oder der Name oder die Abkürzung.

       %+     Datum und Zeit im Format von date(1). (TZ)

       %%     Das Zeichen »%«.

       Einige  Konvertierungsanweisungen können durch vorangestelltes E oder O
       modifiziert  werden,  um  anzufordern,  dass  ein  alternatives  Format
       benutzt werden soll. Existiert das alternative Format in der momentanen
       Locale nicht, ist das Verhalten so, als ob es keine Modifikation  gibt.
       (SU)

       Die  Single  Unix  Specification  erwähnt %Ec, %EC, %Ex, %EX, %Ry, %EY,
       %Od, %Oe, %OH, %OI, %Om, %OM, %OS, %Ou, %OU, %OV, %Ow, %OW, %Oy,  wobei
       der  Effekt von O ist, alternative numerische Symbole zu benutzen (etwa
       römische Zahlen), und der  von  E,  eine  Locale-abhängige  alternative
       Repräsentation zu wählen.

       Die  genaue  Struktur der Zeit tm ist in <time.h> definiert. Siehe auch
       ctime(3).

RÜCKGABEWERT

       Die Funktion strftime() liefert die Anzahl der Buchstaben  zurück,  die
       in  das  Feld  s  geschrieben wurden, allerdings ohne das abschließende
       NULL-Zeichen am Ende, vorausgesetzt, die  Zeichenkette,  einschließlich
       des  NULL-Zeichens,  passt.  Anderenfalls wird 0 zurückgegeben, und der
       Inhalt des Feldes ist undefiniert. (Zumindest  seit  libc  4.4.4;  sehr
       alte  Versionen  von  libc,  wie etwa 4.4.1, gaben max zurück, wenn das
       Feld zu klein war.)

       Beachten Sie, dass der Rückgabewert 0 nicht notwendigerweise auf  einen
       Fehler  hinweist;  zum  Beispiel  ist  häufig %p in vielen Locales eine
       leere Zeichenkette.

UMGEBUNG

       Die Umgebungsvariablen TZ und LC_CTIME werden benutzt.

KONFORM ZU

       ANSI C,  SVID  3,  ISO  9899.  Es  gibt  strikte  Teilmengenbeziehungen
       zwischen  den  Konvertierungen  aus ANSI C (nicht markiert), diesen aus
       der Single  Unix  Specification  (markiert  als  SU),  diesen  aus  dem
       Timezone-Paket von Olson (TZ) und denen aus der glibc (GNU), außer dass
       %+ in der glibc2 nicht unterstützt wird. Andererseits hat glibc2 einige
       Erweiterungen.

       POSIX.1  bezieht  sich nur auf ANSI C; POSIX.2 beschreibt unter date(1)
       mehrere Erweiterungen, die auch auf strftime zutreffen könnten.

SIEHE AUCH

       date(1), time(2), ctime(3), setlocale(3), sprintf(3).

                                   März 1999                       STRFTIME(3)