Syntaks
Int GetTimeOfDay (Struct TimeVal *TP, Struct Timezone *TZ)De GetTimeOfDay () Funksjon er definert i SYS/TID.h headerfil.
Argumenter
Denne funksjonen tar to argumenter:
1st argument peker på TimeVal struktur. De TimeVal struktur er erklært som nedenfor i SYS/TID.h headerfil:
struct TimeValStruct Tideval -strukturen representerer en kalendertid. Den har to medlemmer:
De 2nd argument peker på tidssone struktur. Det skal normalt settes til null fordi Struct Timezone er foreldet. Dette argumentet er kun for bakoverkompatibilitet.
Returverdier
Om suksess, den GetTimeOfDay () Return 0, for svikt returnerer funksjonen -1.
Enkel få tid og utskrift
#inkludereProduksjon:
Her, SYS/TID.h har blitt inkludert for GetTimeOfDay () funksjon og tidsvalstruktur. De GetTimeOfDay () Funksjon Angi tiden i TimeVal (Current_Time) Structure Member. TV_sec er det integrerte antall sekunder som er gått siden starten av Unix Epoch, På Midnight UTC 1. januar 1970 og TV_USEC er et ekstra antall mikrosekunder som går fra TV_sec. Hvis du kjører programmet, bør du se utdataene. Hver gang du kjører programmet vil utdataene endre seg.
NULL -argumentfeil
#inkludereProduksjon:
I dette eksemplet viser det første argumentet om GetTimeOfDay () funksjonen skal ikke være null. Samlingsadvarsel vil komme hvis det første argumentet er null.
Formatering av gjeldende tidseksempel
#inkludereProduksjon:
I dette eksemplet viser hvordan du skriver ut dato og tid i forskjellige format. Det er ikke veldig enkelt å representere datoer fra returverdien av GetTimeOfDay () funksjon . Her, lokal tid() og StrfTime () Funksjoner brukes til å pent representere returverdien av GetTimeOfDay ().
De lokal tid() funksjon tar et argument, som er en referanse til en peker i TV_sec innen Struct TimeVal og returnerer en referanse til en peker av en struct tm gjenstand.
De StrfTime () funksjonen vil generere en personlig, formatert streng som viser dato og klokkeslett fra struct tm peker. Formatspesifikasjoner brukes til formatert display. For eksempel spesifiserer formatstrengen "%d-%m-%y%h:%m:%s" dato og klokkeslett i dette skjemaet:
14-04-2020 13:09:42Følgende er konverteringsspesifikasjonene, kan brukes til formatert visning:
Spesifikasjon | Betydning |
%en | Ukedagens forkortede navn i henhold til det nåværende sted. |
%EN | Ukedagens navn i henhold til det nåværende sted. |
%b | Navn på den forkortede måneden i henhold til det nåværende sted. |
%B | Navn på hele måneden i henhold til nåværende sted. |
%c | Den foretrukne representasjonen av dato og tid for det nåværende sted. |
%d | Som et desimaltall for månedens dag (rekkevidde 01 - 31). |
%H | Bruker 24 -timers (område 00 - 23) til timen som desimaltall. |
%JEG | Bruker 12 -timers (område 00 - 23) til timen som desimaltall. |
%J | Som et desimaltall for året av året (Range 001-366). |
%m | Som et desimaltall for måneden (rekkevidde 01 - 12). |
%M | Desimalnummeret til minuttet. |
%p | Basert på den spesifiserte tidsverdien, enten 'AM' eller 'PM' eller de tilsvarende strengene for dagens sted. |
%S | Desimalnummeret til det andre. |
%x | Foretrukket representasjon av datoen for dagens sted, men uten tid. |
%X | Foretrukket representasjon av tiden for dagens sted, men uten dato. |
%y | Året er desimal, men ingen århundre (spenner fra 00 - 99). |
%Y | Året er desimal inkludert århundre. |
%Z | Tidssonen. |
Bruker GetTimeOfDay for å måle utførelsestid for programmet
#inkludereProduksjon:
Dette eksemplet viser at hvordan GetTimeOfDay () Funksjon kan brukes til beregning av utførelsestid for et program.
Konklusjon
På denne måten GetTimeOfDay () Funksjon kan brukes i Linux. For å porttere eksisterende kode, GetTimeOfDay () funksjon kan brukes, men i ny kode skal den ikke brukes. Clock_GetTime () funksjon kan brukes i stedet for GetTimeOfDay ().