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

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2021
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : janvier 2021
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Calcul de la différence entre 2 dates
    Bonjour,

    je débute dans le milieu de la programmation C. Juste pour le plaisir je me suis amusé à calculer la différence de temps entre 2 dates. J'ai essayé avec une méthode de calcul perso. Puis j'ai comparé avec la fonction "difftime". Je trouve systématiquement 3600 secondes d'écart.
    En lançant votre programme
    https://c.developpez.com/faq/?page=G...ire-deux-dates
    le 03 janvier 2021 à 12h36
    et en remplaçant "an2000" par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        an2000.tm_mday = 02; 
        an2000.tm_mon  = 0; 
        an2000.tm_year = 121;
        an2000.tm_hour = 12;
        an2000.tm_min  = 36;
        an2000.tm_sec  = 0;
    on obtient 90000 secondes soit 25 heures.
    Est-ce ma méthode de calcul qui contient une erreur ou tout simplement moi qui utilise mal la fonction "difftime"?
    Merci d'avance pour votre réponse

  2. #2
    Expert éminent
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    décembre 2015
    Messages
    1 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : décembre 2015
    Messages : 1 245
    Points : 6 068
    Points
    6 068
    Par défaut
    Bonjour,

    Il manque des données pour te répondre précisément, ce que l'on peut dire:
    • Pour saisir le 3 du mois, il faut écrire an2000.tm_mday = 3; (et ne met pas un zéro devant un nombre en C, essaie d'entrer le 08 du mois et tu verras pourquoi!) Attention par contre les numéros du mois commencent eux à 0 pour janvier et les années à 0 pour 1900.
    • D'autre part avant d'utiliser la struct tm, il est important de mettre tous les champs à 0. Sinon tu risques d'activer l'heure d'été ou d'hiver. Ça peut expliquer l'erreur d'une heure.

    Je viens de regarder l'exemple, il y a une erreur dans le tuto. Il faut écrire :

Discussions similaires

  1. Calcul d'une différence entre 2 dates
    Par Bzik59 dans le forum WinDev
    Réponses: 4
    Dernier message: 22/11/2018, 21h39
  2. Réponses: 3
    Dernier message: 20/07/2012, 18h45
  3. [Dates] Calculer la différence entre 2 dates
    Par cyberdevelopment dans le forum Langage
    Réponses: 2
    Dernier message: 13/04/2007, 14h34
  4. Réponses: 4
    Dernier message: 18/10/2006, 16h48
  5. [Dates] Calcul d'une différence entre deux heures
    Par loreleï85 dans le forum Langage
    Réponses: 12
    Dernier message: 28/06/2006, 12h43

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