IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

recuperer le temps courant en milliseconds


Sujet :

C

  1. #1
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 35
    Par défaut recuperer le temps courant en milliseconds
    Comment peut-on recuperer le temps courant en millisecond?

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Sous Windows avec GetLocalTime() qui te retourne une structure SYSTEMTIME dans laquelle tu trouves des milli secondes.

    Mais c'est pas très portable...
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par sisna Voir le message
    Comment peut-on recuperer le temps courant en millisecond?
    Il n'y a pas de solutions portables. Ça dépend de ton système.

  4. #4
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 35
    Par défaut
    je travaille sous windows, je veux mesurer le temps d execution d une fonction en millisecond. quelle fonction dois je utiliser avant et apres mon code pour mesurer le temps d execution

  5. #5
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Et voilà, quand on spécifie un peu mieux le besoin, on a de meilleures réponses

    GetTickCount() est la fonction qu'il te faut. Elle retourne le nombre de millisecondes depuis le démarrage de la machine.
    Tu prends le temps avant et après ta fonction et tu fais une bête soustraction pour avoir la durée en millisecondes.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  6. #6
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 35
    Par défaut
    j ai utilise GetTickCount(), mais la difference entre les deux temps me donne 0. de quoi est ce du?

  7. #7
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 615
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 615
    Billets dans le blog
    2
    Par défaut
    à ce que ta fonction doit prendre moins que ça..

    Si tu veux exactement, j'ai mis un code à disposition dans les sources C sur ce site.. Cherche le dernier package de la rubrique temps, je crois...

    et voici le lien pour mon code http://c.developpez.com/sources/?pag...DATE_get_clock, en bas de la page...

    ou bien la fonction clock()

  8. #8
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 35
    Par défaut
    j ai vu que la fonction clock() retourne le nombre de seconds ecoules, le code que je dois chronometrer s execute beacoup plus vite que ca

  9. #9
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par sisna Voir le message
    j ai vu que la fonction clock() retourne le nombre de seconds ecoules,
    Tu as lu ça où ?

  10. #10
    Membre averti
    Inscrit en
    Juillet 2008
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 35
    Par défaut
    Citation Envoyé par Emmanuel Delahaye Voir le message
    Tu as lu ça où ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    int main (void)
    {
      clock_t start, end;
     
      start = clock ();
      {
        /* Portion de code a chronometrer */
      }
      end = clock ();
      printf ("Temps en secondes : %f\n", (end - start) / (double)CLOCKS_PER_SEC);
      return 0;
    }

  11. #11
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 407
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 407
    Par défaut
    Sous Windows, si tu veux une mesure vraiment précise, tu peux utiliser QueryPerformanceCounter() : Ce compteur associé est incrémenté de QueryPerformanceFrequency() unités par seconde.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  12. #12
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par sisna Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    int main (void)
    {
      clock_t start, end;
     
      start = clock ();
      {
        /* Portion de code a chronometrer */
      }
      end = clock ();
      printf ("Temps en secondes : %f\n", (end - start) / (double)CLOCKS_PER_SEC);
      return 0;
    }
    Et sur ta machine, que vaut CLOCKS_PER_SEC ?

  13. #13
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 565
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 565
    Par défaut Netiquette
    Sisna, je ne sais pas d'où tu postes, mais si tu mets « bonjour » et « merci » dans tes messages, on sera également beaucoup plus enclins à t'aider.

Discussions similaires

  1. Recuperation du repertoire courant et utilisation
    Par Kikumaru dans le forum Scripts/Batch
    Réponses: 6
    Dernier message: 13/06/2007, 16h07
  2. [XpathNavigator] Comment recuperer le XmlNode courant ?
    Par igorzup dans le forum Accès aux données
    Réponses: 2
    Dernier message: 25/08/2006, 17h59
  3. Recuperer le temp d'inactivité
    Par Colbix dans le forum Visual C++
    Réponses: 2
    Dernier message: 21/07/2006, 12h25
  4. récupérer le temps d'exécution ,fonction systeme
    Par jul-974 dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 16/05/2006, 00h22
  5. Récupérer le répértoire courant
    Par Belegkarnil dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 19/12/2005, 06h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo