Time(NULL)-Funktion in C++

Zeeshan Afridi 12 Oktober 2023
Time(NULL)-Funktion in C++

Dieser Artikel behandelt die Funktion time(NULL) in C++.

die time(NULL)-Funktion in C++

Die Funktion time() mit einem Parameter NULL, time(NULL), gibt die aktuelle Kalenderzeit in Sekunden seit dem 1. Januar 1970 zurück. Null ist eine eingebaute Konstante, deren Wert 0 ist, und ein Zeiger ähnlich 0, es sei denn, die CPU unterstützt ein spezielles Bitmuster für einen Nullzeiger.

Angenommen, Sie übergeben einen Zeiger auf eine time_t-Variable; Diese Variable zeigt auf die aktuelle Zeit. time_t ist ein Datentyp in der ISO-C++-Bibliothek, der zum Speichern und Verwenden von Systemzeitwerten definiert ist.

Solche Werttypen werden von der Standard-Bibliotheksfunktion time() zurückgegeben. Sie ist in der Header-Datei time.h definiert und ist eine vorzeichenlose lange Ganzzahl und hat eine Größe von 8 Bytes.

Beispielcode:

#include <time.h>

#include <iostream>

using namespace std;

int main() {
  time_t seconds;
  seconds = time(NULL);
  cout << "Time in seconds is = " << seconds << endl;
}

Ausgang:

Time in seconds is = 1650710906

Wir haben eine Variable Sekunden vom Datentyp time_t definiert und mit dem Rückgabewert der Funktion time(NULL) initialisiert. Diese Funktion gab die Zeit in Sekunden ab 1. Januar 1970 zurück, und wir druckten das Ergebnis am Ende aus.

Nun, die Lesezeit in Sekunden ist für Menschen möglicherweise nicht bequem verständlich, daher sollte es einen Mechanismus geben, um die Zeit in Sekunden in ein verständliches Format umzuwandeln. Und dank der C++-Bibliotheken haben wir wie folgt eine Lösung dafür;

#include <time.h>

#include <iostream>

using namespace std;

int main() {
  time_t seconds;
  seconds = time(NULL);
  struct tm* local_time = localtime(&seconds);
  cout << "Time in seconds      " << seconds << endl;
  cout << "local time           " << asctime(local_time);
}

Ausgang:

Time in seconds   1650712161
local time      Sat Apr 23 16:09:21 2022

struct tm ist eine eingebaute Struktur in der Header-Datei time.h in der Sprache C/C++, und jedes Objekt enthält das Datum und die Uhrzeit auf der Maschine. Wir können diese Elemente der tm-Struktur verwenden, um unseren Code nach unseren Wünschen anzupassen.

struct tm {
  int tm_sec;    // seconds,  ranges from 0 to 59
  int tm_min;    // minutes, ranges from 0 to 59
  int tm_hour;   // hours, ranges from 0 to 23
  int tm_mday;   // day of the month, ranges from 1 to 31
  int tm_mon;    // month, ranges from 0 to 11
  int tm_year;   // The number of years since 1900
  int tm_wday;   // day of the week, ranges from 0 to 6
  int tm_yday;   // day in the year, ranges from 0 to 365
  int tm_isdst;  // daylight saving time
};
Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn

Verwandter Artikel - C++ Function