Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21
  1. #1
    Utente di HTML.it L'avatar di Pacio88
    Registrato dal
    Sep 2007
    Messaggi
    447

    [C++] Liberia time.h - Funzione clock()

    In una applicazione che sto sviluppando devo tenere di conto del tempo che questa resta attiva pertanto mi sono andato a guardare la funzione clock() della libreria time.h
    Tuttavia devo ammettere che non ho per niente capito come funziona visti sopratutto i risultati che ho avuto. Quello che ho capito è riassunto in questa semplice applicazione:
    codice:
    //main.cpp
    #include <iostream>
    #include <ctime>
    using namespace std;
    
    int main(){
    	clock_t time;
    	char stop;
    	cin >> stop;
    	time = clock();	//ritorna il numero di clock da quando è stata lanciata l'applicazione
    	cout << time/CLOCKS_PER_SEC  << endl;
    	return 0;
    }
    Mi aspetto che la funzione clock() ritorni il numero di clock trascorsi dal lancio dell'applicazione e successivamente ne stampo il corrispettivo tempo in secondi.
    La seguente applicazione tuttavia ha come output sempre il valore 0. Sicuramente però sto facendo un cattivo uso della funzione clock().

    Grazie per le risposte.

  2. #2
    Utente di HTML.it L'avatar di KrOW
    Registrato dal
    Feb 2009
    Messaggi
    281
    Ciao ... Strano perchè a me funge .... Sei sicuro che il codice compilato è quello scritto nel post ??? :master:

  3. #3
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    Anche per me funziona ... (naturalmente devi aspettare qualche secondo prima di fornire un input) ...


    P.S. time.h NON e' una libreria ma un semplice include ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  4. #4
    Utente di HTML.it L'avatar di XWolverineX
    Registrato dal
    Aug 2005
    residenza
    Prague
    Messaggi
    2,565
    Originariamente inviato da oregon
    P.S. time.h NON e' una libreria ma un semplice include ...
    All'università ogni file .h è una libreria.
    stdio.h ->libreria
    stdlib.h -> libreria
    mioincludeconunsolotypedef.h ->libreria
    "Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)

    "Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)

    http://xvincentx.netsons.org/programBlog

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    Originariamente inviato da XWolverineX
    All'università ogni file .h è una libreria.
    Povera università ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  6. #6
    Utente di HTML.it L'avatar di KrOW
    Registrato dal
    Feb 2009
    Messaggi
    281
    In quale università vai ????
    I file con estensione .h sono detti file header che in genere contengono dichiarazioni di costanti, di funzioni, di classi, di simboli ecc ..... Una libreria e' un file in formato .lib (ce ne sono anche altri) che contiene le implementazioni delle suddette funzioni, classi ecc e viene linkata al programma attraverso un altro programma chiamato linker ... Includendo un file header si dice al compilatore "guarda esiste tale funzione/classe/costante ecc" (le dichiarazioni) mentre linkando una libreria si rendono disponobili le definizioni (nota che il compilatore vuole solo l' header mentre il linker solo le librerie)... Se non ti è chiaro qualcosa fammi sapere ... Ciao

  7. #7
    Utente di HTML.it L'avatar di Pacio88
    Registrato dal
    Sep 2007
    Messaggi
    447
    Grazie per le segnalazioni, aimè questa è l'ennesima discussione che apro per risolvere un problema scoprendo poi che il mio codice compilato su altre macchine fa alla perfezione il suo dovere..

    La prossima volta che risuccede siete liberi di OFFENDERMI!!

    Mi permetto di andare un po' OT..

    Ammetto che sono all'università ma voglio precisare che la mia superficialità nel definire i file header librerie non è colpa dei miei studi... infatti il C++ l'ho imparato "ovunque" tranne che all'università (infatti ho sempre disertato il corso ed ho acquistato libri che non erano tra quelli consigliati).

    Sul fatto che all'uni si insegni veramente poco a programmare lo ho sempre sostenuto, sopratutto dopo aver testato sulla mia pelle. L'esame di programmazione consiste nel realizzare programmi demenziali che un autodidatta è in grado di sviluppare in 3 settimane di studi. Pensate che sui 4 mesi a disposizione il primo è speso a insegnare le conversione da base 10 a 2 e a programmare in pseodo-linguaggio. Se poi ci tenete a vedere con i vostri occhi come sono fatti gli esami contattatemi per MP!!

    Tuttavia in questa povera Italia senza il pezzo di carta si va poco lontani e così si va all'università a far finta di imparare..

    P.S. La cosa divertente che per far finta di imparare si devono passare ore ed ore davanti libri per sapere spesso cose che nella vita professionale mai ti saranno utili..

    EDIT: Ti ringrazio KrOW per la spiegazione, ma nonostante abbia dimostrato l'opposto so che cos'è una libreria... oltretutto se proprio volessi avere delucidazioni in merito è sufficiente aprire anche il più ridicolo libro sul C++..

  8. #8
    Utente di HTML.it L'avatar di KrOW
    Registrato dal
    Feb 2009
    Messaggi
    281
    Non credo proprio che non ti saranno utili nella vita professionale e scusa tanto se volevo farti capire cos'è una libreria (visto che dal post non sembrava che tu avessi le idee chiare)

  9. #9
    Originariamente inviato da XWolverineX
    All'università ogni file .h è una libreria.
    E i register regnano sovrani.
    Amaro C++, il gusto pieno dell'undefined behavior.

  10. #10
    Utente di HTML.it L'avatar di XWolverineX
    Registrato dal
    Aug 2005
    residenza
    Prague
    Messaggi
    2,565
    Originariamente inviato da KrOW
    In quale università vai ????
    I file con estensione .h sono detti file header che in genere contengono dichiarazioni di costanti, di funzioni, di classi, di simboli ecc ..... Una libreria e' un file in formato .lib (ce ne sono anche altri) che contiene le implementazioni delle suddette funzioni, classi ecc e viene linkata al programma attraverso un altro programma chiamato linker ... Includendo un file header si dice al compilatore "guarda esiste tale funzione/classe/costante ecc" (le dichiarazioni) mentre linkando una libreria si rendono disponobili le definizioni (nota che il compilatore vuole solo l' header mentre il linker solo le librerie)... Se non ti è chiaro qualcosa fammi sapere ... Ciao
    Grazie, ma lo so già. Ho detto che VADO all'università, non che credo a quello che dicono.
    "Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)

    "Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)

    http://xvincentx.netsons.org/programBlog

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.