Hvordan konvertere epoketid i C ++
Tidsfunksjonen i C ++ standardbiblioteket returnerer sekunder som har gått siden en spesifikk, standardisert dato og tid kjent som epoken. Selv om denne verdien inneholder all informasjonen som trengs for å beregne gjeldende klokkeslett og dato for systemet, er det feil å skrive din egen tidsoversettelseskode. Bruk av standardbibliotekets medfølgende tidskonverteringsfunksjoner gjør denne oversettelsesprosessen triviell, slik at du kan fokusere på de mer komplekse delene av applikasjonen.
Trinn 1
Inkluder C ++ - standardbibliotekets tidsfunksjonalitet i applikasjonen din. Legg til følgende linje øverst på inkluderingslisten:
inkludere
Steg 2
Få sekunder som har gått siden epoken, og lagre den lokalt. Gjør dette ved å ringe tid (), og lagre resultatet i et objekt av typen time_t. Tidsfunksjonen godtar også en peker til et objekt av typen time_t som et argument, men det er enklere å lagre dette objektet lokalt på bunken:
time_t timeSinceEpoch = tid (NULL);
Trinn 3
Lag en tidsstruktur for å lagre resultatet av tidskonverteringen. Denne strukturen er definert i time.h-headerfilen som en struktur som heter tm, og gir praktisk navngitte medlemsvariabler for hver komponent av den konverterte tiden:
tm timeResult;
Bruk en av de innebygde konverteringsfunksjonene til å lagre time_t-verdien som ble oppnådd tidligere som en tm-struktur. For enkelhets skyld konverterer følgende kode et time_t-objekt til en UTC tm-struktur:
timeResult = gmtime (& timeSinceEpoch);