C++-Referenz/ Standardbibliothek/ Zeit, Datum und Lokalisierung

Alte Seite

Die Arbeit am Buch »C++-Referenz« wurde vom Hauptautor eingestellt. Ein Lehrbuch zum Thema C++ ist unter »C++-Programmierung« zu finden. Eine sehr umfangreiche und gute Referenz gibt es unter cppreference.com.

Diese Seite beschreibt C++98, einen stark veralteten Standard. Aktuelle Referenz.

Die Struktur tm

Bearbeiten
// Header: ctime
struct tm{
    int tm_sec;   // Sekunden (0-61*)
    int tm_min;   // Minuten (0-59)
    int tm_hour;  // Stunden (0-23)
    int tm_mday;  // Monatstag (1-31)
    int tm_mon;   // Monate seit Januar (0-11)
    int tm_year;  // Jahre seit 1900
    int tm_wday;  // Tage seit Sonntag (0-6)
    int tm_yday;  // Tage seit 1. Januar (0-365)
    int tm_isdst; // pos. - Sommerzeit, 0 - Winterzeit, neg. keine Informationen
};
// * ist in der Regel 0-59. 60-61 für Schaltsekunden in bestimmten Systemen.
// Header: ctime
char* asctime(tm const *ptr);
// Header: ctime
clock_t clock();
// Header: ctime
char* ctime(time_t const *time);

difftime

Bearbeiten
// Header: ctime
double difftime(time_t time2, time_t time1);
// Header: ctime
tm* gmtime(time_t const *time);

localeconv

Bearbeiten
// Header: clocale
lconv* localeconv();
// Header: clocale
struct lconv{
    char* decimal_point;     // Dezimalpunkt für nicht-Geldwerte
    char* thousands_sep;     // Tausendertrennzeichen
    char* grouping;          // beschreibt Gruppieren von nicht-Geldwerten
    char* int_curr_symbol;   // internationales Währungssymbol
    char* currency_symbol;   // lokales Währungssymbol
    char* mon_decimal_point; // Dezimalpunkt für Geldwerte
    char* mon_thousands_sep; // Tausendertrennzeichen für Geldwerte
    char* mon_grouping;      // beschreibt Gruppieren von Geldwerten
    char* positive_sign;     // zeigt positive Geldwerte an
    char* negative_sign;     // zeigt negative Geldwerte an
    char  int_frac_digits;   // Nachkommastellen für Geldwerte in internationalem Format
    char  frac_digits;       // Nachkommastellen für Geldwerte in lokalem Format
    char  p_cs_precedes;     // 1 wenn Währungssymbol vor einem positiven Wert steht
                             // 0 wenn Währungssymbol hinter dem Wert steht
    char  n_cs_precedes;     // 1 wenn Währungssymbol vor einem negativem Wert steht
                             // 0 wenn Währungssymbol hinter dem Wert steht
    char  p_sep_by_space;    // 1 wenn Währungssymbol vor einem positiven Wert
                             // durch Leerzeichen getrennt wird, sonst 0
    char  n_sep_by_space;    // 1 wenn Währungssymbol vor einem negativen Wert
                             // durch Leerzeichen getrennt wird, sonst 0
    char  p_sign_posn;       // Gibt Position des Positivsymbols an:
                             // 0 : Währungssymbol und Wert von Klammern umgeben
                             // 1 : Vor Währungssymbol und Wert
                             // 2 : Hinter Währungssymbol und Wert.
                             // 3 : Vor Währungssymbol
                             // 4 : Hinter Währungssymbol
                             // CHAR_MAX : Unspezifiziert.
   char  n_sign_posn;        // Gibt Position des Negativsymbols an (siehe p_sign_posn)
};

localtime

Bearbeiten
// Header: ctime
tm* localtime(time_t const *time);
// Header: ctime
time_t mktime(tm *time);

setlocale

Bearbeiten
// Header: clocale
char* setlocale(int type, char const *locale);

strftime

Bearbeiten
// Header: ctime
size_t strftime(char *str, size_t maxsize, char const *fmt, tm const *time);
// Header: ctime
time_t time(time_t *time);