C ++ wcsftime () - C ++ Standardbibliothek

Die Funktion wcsftime () in C ++ konvertiert das angegebene Datum und die angegebene Uhrzeit von einer bestimmten Kalenderzeit in eine nullterminierte breite Zeichenfolge gemäß einer Formatzeichenfolge.

Die Funktion wcsftime () ist in der Header-Datei definiert.

wcsftime () Prototyp

 size_t wcsftime (wchar_t * str, size_t count, const wchar_t * format, const tm * time);

Die Funktion wcsftime () akzeptiert 4 Argumente: str, count, format und time.

Die Datums- und Zeitinformationen, auf die die Uhrzeit zeigt, werden basierend auf dem Formatwert in ein nullterminiertes breites Zeichen konvertiert und in dem breiten Array gespeichert, auf das str zeigt. Es werden höchstens Zählbytes geschrieben.

wcsftime () Parameter

  • str: Zeiger auf das erste Element des breiten Zeichenarrays, um das Ergebnis zu speichern.
  • count: Maximale Anzahl der zu schreibenden breiten Zeichen.
  • Format: Zeiger auf eine nullterminierte breite Zeichenfolge, die das Format der Konvertierung angibt. Die Formatzeichenfolge besteht aus einem Konvertierungsspezifizierer (beginnend mit% und optional gefolgt von E oder O) und anderen gewöhnlichen breiten Zeichen.
    Die gewöhnlichen breiten Zeichen einschließlich des abschließenden null breiten Zeichens werden so wie sie sind in die ausgegebene breite Zeichenfolge kopiert. Formatbezeichner für wcsftime ()
    Konvertierungsspezifizierer Beschreibung Verwendete Felder
    %. Schreibt das Zeichen%
    n Schreibt ein Zeilenumbruchzeichen
    t Schreibt ein horizontales Tabulatorzeichen
    Jahr
    Y. Schreibt 4 Ziffern des Jahres, zB 2011 tm_year
    EY Schreibt 4 Ziffern pro Jahr in die alternative Darstellung des Gebietsschemas tm_year
    y Schreibt die letzten 2 Ziffern des Jahres, Bereich (00, 99) tm_year
    Oy Schreibt die letzten 2 Ziffern des Jahres in die alternative Darstellung des Gebietsschemas tm_year
    Ey Schreibt das Jahr als Versatz zum alternativen Kalenderzeitraum des Gebietsschemas% EC (vom Gebietsschema abhängig) tm_year
    C. Schreibt die ersten 2 Ziffern des Jahres, Bereich (00,99) tm_year
    EG Schreibt den Namen des Basisjahres (Zeitraum) in die alternative Darstellung des Gebietsschemas. tm_year
    G Schreibt ein wochenbasiertes Jahr nach ISO 8601, dh das Jahr, das die angegebene Woche enthält. tm_year, tm_wday, tm_yday
    G Schreibt die letzten 2 Ziffern des wochenbasierten Jahres nach ISO 8601, dh das Jahr, das die angegebene Woche enthält (Bereich (00,99)). tm_year, tm_wday, tm_yday
    Monat
    b Schreibt einen abgekürzten Monatsnamen, z. B. Jan. tm_mon
    h Gleich wie b tm_mon
    B. Schreibt den vollständigen Monatsnamen, z. B. Januar tm_mon
    m Schreibt den Monat als Dezimalzahl, Bereich (01,12) tm_mon
    Om Schreibt den Monat mit dem alternativen numerischen System des Gebietsschemas tm_mon
    Woche
    U. Schreibt die Woche des Jahres als Dezimalzahl von 00 bis 53 (Sonntag ist der erste Tag der Woche) tm_year, tm_wday, tm_yday
    OU Schreibt die Woche des Jahres nach% U unter Verwendung des alternativen numerischen Systems tm_year, tm_wday, tm_yday
    W. Schreibt die Woche des Jahres als Dezimalzahl von 00 bis 53 (Montag ist der erste Tag der Woche) tm_year, tm_wday, tm_yday
    OW Schreibt die Woche des Jahres in% W unter Verwendung des alternativen numerischen Systems tm_year, tm_wday, tm_yday
    V. Schreibt die ISO 8601-Woche des Jahres (Bereich (01,53)). tm_year, tm_wday, tm_yday
    OV Schreibt die Woche des Jahres in% V unter Verwendung des alternativen numerischen Systems tm_year, tm_wday, tm_yday
    Tag des Jahres / Monats
    j Schreibt den Tag des Jahres als Dezimalzahl, Bereich (001,366) tm_yday
    d Schreibt den Tag des Monats als Dezimalzahl, Bereich (01,31) tm_mday
    Od Schreibt den Tag des Monats wie in% d unter Verwendung des alternativen numerischen Systems tm_mday
    e Schreibt den Tag des Monats als Dezimalzahl, Bereich (1,31) tm_mday
    Oe Schreibt den Tag des Monats wie in% e unter Verwendung des alternativen numerischen Systems tm_mday
    Wochentag
    ein Schreibt einen abgekürzten Wochentagsnamen, z. B. Fr (abhängig vom Gebietsschema) tm_wday
    EIN Schreibt den vollständigen Wochentagsnamen, z. B. Freitag (abhängig vom Gebietsschema) tm_wday
    w Schreibt den Wochentag als Dezimalzahl, Bereich (0-6) (Sonntag ist 0) tm_wday
    Ow Schreibt den Wochentag nach% w unter Verwendung des alternativen numerischen Systems tm_wday
    u Schreibt den Wochentag als Dezimalzahl, wobei Montag 1 ist (ISO 8601-Format), Bereich (1-7) tm_wday
    Ou Schreibt den Wochentag nach% u unter Verwendung des alternativen numerischen Systems tm_wday
    Stunde, Minute, Sekunde
    H. Schreibt Stunde als Dezimalzahl, Bereich (00,23) tm_hour
    OH Schreibt die Stunde wie in% H unter Verwendung des alternativen numerischen Systems tm_hour
    ich Schreibt Stunde als Dezimalzahl, Bereich (01,12) tm_hour
    OI Schreibt die Stunde wie in% I unter Verwendung des alternativen numerischen Systems tm_hour
    M. Schreibt Minute als Dezimalzahl, Bereich (00,59) tm_min
    OM Schreibt die Minute wie in% M unter Verwendung des alternativen numerischen Systems tm_min
    S. Schreibt die Sekunde als Dezimalzahl, Bereich (00,60) tm_sec
    Betriebssystem Schreibt als zweites% um% S unter Verwendung des alternativen numerischen Systems tm_sec
    Andere
    c Schreibt eine Standardzeichenfolge für Datum und Uhrzeit, z. B. Sun Oct 17 04:41:13 2010 (abhängig vom Gebietsschema) alle
    Ec Schreibt die alternative Datums- und Zeitzeichenfolge des Gebietsschemas alle
    x Schreibt eine lokalisierte Datumsdarstellung (abhängig vom Gebietsschema) alle
    Ex Schreibt die alternative Datumsdarstellung des Gebietsschemas alle
    X. Schreibt eine lokalisierte Zeitdarstellung (länderabhängig) alle
    EX Schreibt die alternative Zeitdarstellung des Gebietsschemas alle
    D. Entspricht "% m /% d /% y" tm_mon, tm_mday, tm_year
    F. Entspricht "% Y-% m-% d" tm_mon, tm_mday, tm_year
    r Schreibt die lokalisierte 12-Stunden-Uhrzeit tm_hour, tm_min, tm_sec
    R. Entspricht "% H:% M" tm_hour, tm_min
    T. Entspricht "% H:% M:% S. tm_hour, tm_min, tm_sec
    P. Schreibt lokalisiert am oder pm (abhängig vom Gebietsschema) tm_hour
    z Schreibt Offset von UTC im ISO 8601-Format (z. B. -0545) oder keine Zeichen, wenn die Zeitzoneninformationen nicht verfügbar sind tm_isdst
    Z. Schreibt den Namen oder die Abkürzung der Zeitzone oder nichts, wenn die Zeitzoneninformationen nicht verfügbar sind (abhängig vom Gebietsschema). tm_isdst
  • Uhrzeit: Die zu konvertierenden Datums- und Uhrzeitinformationen.

wcsftime () Rückgabewert

  • Bei Erfolg gibt die Funktion wcsftime () die Anzahl der breiten Zeichen zurück, die in das breite Zeichenarray geschrieben wurden, auf das str zeigt, ohne das abschließende L ' 0'.
  • Wenn die Anzahl erreicht wurde, bevor die gesamte Zeichenfolge gespeichert werden konnte, wird 0 zurückgegeben und der Inhalt ist undefiniert.

Beispiel: Wie funktioniert die Funktion wcsftime ()?

 #include #include #include using namespace std; int main() ( time_t curr_time; tm * curr_tm; wchar_t date_string(100); wchar_t time_string(100); time(&curr_time); curr_tm = localtime(&curr_time); wcsftime(date_string, 50, L"Today is %B %d, %Y", curr_tm); wcsftime(time_string, 50, L"Current time is %T", curr_tm); wcout << date_string << endl; wcout << time_string << endl; return 0; )

Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:

 Heute ist der 21. April 2017. Aktuelle Zeit ist 14:42:45

Interessante Beiträge...