So erhalten Sie die aktuelle Zeit mit der Funktion time(NULL) und localtime() in Linux

So erhalten Sie die aktuelle Zeit mit der Funktion time(NULL) und localtime() in Linux

Zeit(); Funktion

Funktionsprototyp: time_t time(time_t *timer)
Funktionszweck: Kalenderzeit der Maschine abrufen oder Kalenderzeit einstellen Header-Datei: time.h
Eingabeparameter: Wenn Timer = NULL, wird die Kalenderzeit der Maschine abgerufen; wenn Zeit = Zeitwert, wird sie zum Einstellen der Kalenderzeit verwendet;
time_t ist ein langer Typ

/* Zeit - Aktuelle Kalenderzeit des Computersystems abrufen
 * Funktionen die Datum und Uhrzeit verarbeiten werden auf Basis des Rückgabewertes dieser Funktion berechnet*
 * Funktionsprototyp:
 * #include <zeit.h>
 * 
 * Zeit_t Zeit(Zeit_t *calptr);
 *
 * Rückgabewert:
 * Erfolg: Anzahl der Sekunden seit 1970-1-1, 00:00:00
 *
 * verwenden:
 * time_t jetzt;
 * 
 * Zeit(&jetzt); // == jetzt = Zeit(NULL);
 */

Ortszeit(); Funktion

Funktionsprototyp: struct tm *localtime(const time_t *timer)
Funktionszweck: Gibt Maschinenzeitinformationen zurück, ausgedrückt in einer tm-Struktur. Header-Datei: time.h
Eingabeparameter: Timer: Maschinenzeit, die mit der Funktion time() ermittelt wurde;

/*
 * localtime - konvertiert einen Zeitwert in die Ortszeit und berücksichtigt dabei die lokale Zeitzone und Sommerzeit-Flags*
 * Funktionsdeklaration:
 * #include <zeit.h>
 *
 * Struktur tm * Ortszeit(const time_t *Timer);
 *
 */
//Die Definition der Struktur tm lautet: 
 Struktur tm 
 { 
   int tm_sec; /* Sekunden: 0-59 (K&R sagt 0-61?) */ 
   int tm_min; /* Minuten: 0-59 */ 
   int tm_hour; /* Stunden seit Mitternacht: 0-23 */ 
   int tm_mday; /* Tag des Monats: 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; /* +1 Sommerzeit, 0 Keine Sommerzeit, 
    * -1 weiß nicht */ 
 };

Da time_t eigentlich eine lange Ganzzahl ist, was sollen wir tun, wenn die Anzahl der Sekunden von einem Zeitpunkt (normalerweise 00:00:00 am 1. Januar 1970) bis zu dieser Zeit (d. h. Kalenderzeit) den Zahlenbereich überschreitet, der durch eine lange Ganzzahl dargestellt werden kann? Für den Wert des Datentyps time_t gilt, dass die dargestellte Zeit nicht nach dem 18. Januar 2038, 19:14:07 Uhr liegen kann. Um längere Zeiträume darstellen zu können, führten einige Compilerhersteller 64-Bit- oder sogar noch längere Ganzzahlen ein, um Kalenderzeit zu sparen. Beispielsweise verwendet Microsoft den Datentyp __time64_t, um die Kalenderzeit in Visual C++ zu speichern, und erhält die Kalenderzeit über die Funktion _time64() (anstatt die 32-Bit-Wortfunktion time() zu verwenden). Auf diese Weise kann der Datentyp verwendet werden, um die Zeit vor 00:00:00 am 1. Januar 3001 (ausgenommen diesen Zeitpunkt) zu speichern.

/*
* Zeit();
* @Autor Name<[email protected]>
*/

#include <zeit.h> 
#include <stdio.h> 

int main(int argc, char* argv[])
{ 
  Struktur tm *tp; 
  Zeit_t t = Zeit(NULL); 
  tp = Ortszeit(&t);

  printf("%d/%d/%d\n",tp->tm_mon+1,tp->tm_mday,tp->tm_year+1900); 
  printf("%d:%d:%d\n",tp->tm_Stunde,tp->tm_Min,tp->tm_Sek); 

  gebe 0 zurück;
}

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Beispielerklärung der Alarmfunktion in Linux
  • PHP führt 6 Linux-Befehlsfunktionscodebeispiele aus
  • Detaillierte Erklärung zur Verwendung der Stat-Funktion und des Stat-Befehls in Linux
  • So fügen Sie einer Python-Funktion unter Linux/Mac ein Timeout hinzu
  • Linux-Unlink-Funktion und wie man Dateien löscht
  • Detaillierte Erklärung zur Verwendung der Linux-lseek-Funktion
  • Eine kurze Analyse des Funktionsaufrufprozesses unter der ARM-Architektur

<<:  Erläuterung der Lösung zur mobilen H5-Bildgenerierung in JavaScript

>>:  Lösung für FEHLER 1054 (42S22) beim Ändern des Passworts in MySQL 5.7

Artikel empfehlen

Warum MySQL Repeatable Read als Standardisolationsebene wählt

Inhaltsverzeichnis Oracle-Isolationsebenen MySQL-...

So importieren Sie schnell Daten in MySQL

Vorwort: Im täglichen Studium und bei der Arbeit ...

Tiefgreifendes Verständnis des Linux-Lastausgleichs LVS

Inhaltsverzeichnis 1. LVS-Lastausgleich 2. Grundl...

So fügen Sie Batchdaten unter Node.js in eine MySQL-Datenbank ein

Im Projekt (nodejs) müssen mehrere Daten gleichze...

Detaillierte Erläuterung des mobilen Projekts vite2.0 + vue3

1. Technische Punkte Vite-Version vue3 ts Integri...

Detaillierte Analyse des HTTP-Statuscodes 502 des Dienstes nginx+php-fpm

Bei einem unserer Webprojekte ist aufgrund der Zu...

vue_drf implementiert SMS-Bestätigungscode

Inhaltsverzeichnis 1. Nachfrage 1. Nachfrage 2. S...

Grafisches Tutorial zur Installation von MySQL 5.7.19 (tar.gz) unter Linux

Das erste Tutorial zur Installation der MySQL-5.7...

Detailliertes Beispiel für das Linux-Allround-Systemüberwachungstool dstat

Umfassendes Systemüberwachungstool dstat dstat is...

MySQL-Implementierung des Funktionsbeispiels „lastInfdexOf“

Manchmal muss MySQL eine Funktion ähnlich zu last...

Grafisches Tutorial zur Installation von CentOS 7.3 auf VMWare

Die Installationsschritte für CentOS 7.3 werden a...

Erfahren Sie schnell, wie Sie mit der Vuex-Statusverwaltung in Vue3.0 beginnen

Vuex ist ein speziell für Vue.js-Anwendungen entw...