Funzione di Differetime in C ++

Funzione di Differetime in C ++
Durante il calcolo o l'esecuzione di qualsiasi operazione, potremmo aver bisogno di qualsiasi funzione per calcolare il tempo totale che è passato fino ad ora o fornire la differenza di tempo in secondi tra due punti. In C ++, ci possono essere diversi modi per eseguire questo compito in modo inappropriato. Ma discuteremo la funzione integrata di C ++, che è la funzione Differetime (), poiché il nome indica che calcola la differenza nel tempo. Questa funzione è definita nella libreria . Quindi ogni volta che siamo disposti a calcolare il tempo, avremo bisogno di questa libreria nel codice sorgente.

Sintassi di Diffftime ()

Double Diffftime (time_obj end, time_obj start);

La funzione richiede due parametri in essa. Questi sono gli oggetti che vengono dichiarati attraverso l'oggetto del tempo "time_obj". Uno è la "fine" che mostra il tempo finale di qualsiasi processo. Allo stesso tempo, il secondo è il "avvio" che rappresenta l'ora di inizio. Il valore di ritorno della funzione Diffftime () restituisce la differenza tra il tempo in secondi ottenuti dai due oggetti come descritto sopra.

Questa funzione è associata al tempo di funzione integrato () in C ++, poiché questa funzione restituisce il tempo del calendario corrente. Questo è presente anche nel file di intestazione di C++.

Implementazione della funzione Diffftime ()

Esempio 1 # Difftime () per i prodotti

Per trovare la differenza tra due volte in secondi, è necessario aggiungere la libreria in cui è definita la funzione Diffftime (). Nel linguaggio di programmazione C ++, questa libreria deve essere utilizzata.

#includere
#includere

Come discusso in precedenza, nel programma principale, sono necessari due oggetti, inizio e finitura, per calcolare la differenza tra i tempi. Questi due oggetti sono dichiarati usando time_time.

Time_t inizia, finisci

Viene dichiarata un'altra variabile con il prodotto di un nome di un lungo tipo di dati che memorizzerà i risultati dell'operazione. Ogni volta che la logica che vogliamo applicare nel programma, questo verrà scritta all'interno del corpo degli oggetti di avvio e finitura.

Tempo (& start);
Tempo (e finitura);

Poiché l'oggetto tempo di inizio inizia il tempo e continua mentre la funzione/ operazione è in corso al termine del processo, l'oggetto finito rileva il tempo del finale. Ad esempio, in questo programma spiegato di seguito, abbiamo utilizzato un semplice ciclo nidificato "per calcolare il prodotto di due valori. Questi due valori iniziano da 0 e finiscono a un valore di grande. L'esterno "per" loop termina prima di 1000 e il ciclo interno termina a 30000; All'interno del ciclo "per", il corpo in ogni iterazione, il numero dall'esterno e il numero dal ciclo interno vengono moltiplicati. Le variabili 'i' e 'j' sono indicate a ciascun numero dopo ogni iterazione, un nuovo numero in ogni ciclo. Il risultato è memorizzato nella variabile "prodotto"

Product = i * j;

Il tempo richiesto che vogliamo ottenere viene calcolato attraverso la funzione diversi. Poiché questa funzione contiene due parametri in essa, quindi la funzione sarà:

Diversi (finitura, inizio);

Questa funzione restituirà il tempo ottenuto sottraendo l'orario di inizio dal tempo di fine.

Ora salva il codice sorgente con l'estensione C. Usiamo un compilatore G ++ per compilare un file C ++ ed eseguìlo. Il file che abbiamo usato qui è 'dif. C 'che contiene il codice sorgente, viene compilato e l'output viene archiviato nel file di output tramite' -o '.

$ g ++ -o dif dif.C
$ ./dif

Puoi vedere che il tempo richiesto è 0 secondi. Significa che il ciclo nidificato calcolerà il prodotto in 0 secondi. Nel codice sopra, il valore nell'esterno per loop è inferiore a quello interno, quindi la differenza di tempo era zero perché può essere calcolata facilmente. E se il valore nell'interno per loop diventa più piccolo dell'esterno per loop? Spiegheremo in seguito. Il resto dei requisiti è lo stesso. Il prodotto verrà calcolato all'interno del ciclo. Useremo gli oggetti iniziale e finire per notare i valori di avvio e finale.

Ora salva il codice ed eseguilo. Durante l'esecuzione, vedrai che ci vorrà del tempo. Rispetto alla situazione precedente, richiedono solo zero secondi e il risultato è stato mostrato bruscamente, ma in questo caso, sembra che ci debbano essere più di zero secondi.

Dopo qualche attesa, vedrai la dichiarazione risultante. Secondo questo, i loop hanno richiesto 62 secondi per essere eseguiti in modo da poter calcolare il prodotto di due valori durante ciascuna iterazione.

Esempio 2 # Difftime () per loop nidificati

A differenza dell'istruzione precedente, abbiamo usato una biblioteca diversa qui.

Non è necessario specificare "iostream" e "ctime" o qualsiasi altra libreria utilizzando questa libreria. Entrambe le variabili sono inizializzate. In questo esempio, abbiamo usato il nidificato per i loop tre volte. Ogni ciclo nidificato termina e inizia il prossimo anello nidificato. Ogni ciclo all'interno del ciclo nidificato ha un valore diverso per la variabile I; Per la variabile J, i valori sono gli stessi per il ciclo interno.

Inoltre, non abbiamo calcolato nulla o nessuna operazione. Solo l'esecuzione dei loop aveva avuto luogo. Le variabili di inizio e fine osservano il tempo di avvio e finale.

Dopo ogni esecuzione, alla fine, la funzione Diffftime () viene chiamata per eseguire la risposta.

Diffftime (Ending, Start)

Eseguiremo il codice sorgente per vedere i secondi consumati nell'esecuzione di tre loop nidificati.

Ci vorranno 10 secondi per tutti e tre i loop collettivamente.

Esempio 3 # Diffftime () per un tempo tra le date

Per calcolare la differenza di tempo dall'inizio del programma fino alla fine viene già elaborata. La nostra preoccupazione della discussione è di calcolare la differenza in secondi da un giorno specifico fino ad ora. Qui le date non sono menzionate correttamente. Ma il programma prenderà la data corrente dal sistema. Qui calcoleremo la differenza nel tempo in pochi secondi dal capodanno fino ad ora.

L'oggetto della libreria temporale viene utilizzato per recuperare il tempo corrente in modo che la differenza possa essere calcolata. Qui non abbiamo bisogno delle variabili di inizio e fine separatamente.

Una struttura del tempo "Capodanno" è inizializzata qui. Useremo la variabile "ora" per ottenere l'ora corrente.

Adesso);

L'oggetto "tm" della struttura del nuovo anno dichiarerà ore, min secondi e mese come zero. La funzione Diversa verrà chiamata che richiederà ora (ora corrente) e un'altra funzione integrata all'interno del parametro per ottenere il nuovo anno in pochi secondi.

Secondi = diverso (ora, mktime (& newyear));

Ora esegui il programma; Vedrai che finora sono passati 6036632 secondi secondo la data corrente del sistema.

Conclusione

'Difftime () C ++' è una funzione che si occupa di recuperare il tempo in secondi ottenuti sottraendo il tempo di partenza dal tempo del finale; Queste due variabili di un tipo di oggetto temporale vengono utilizzate per fornire tempo in secondi. Ora concludendo l'articolo, parleremo di alcuni esempi che abbiamo incluso nell'articolo. Questa funzione aiuta anche a fornire il tempo da una data specifica fino ad ora, come discusso sopra nell'esempio.