Bonjour, cliquez-ici pour vous inscrire et participer au forum.
  • Login:


+ Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

langage C, localtime, time.h

  1. lui

    Date d'inscription
    mai 2006
    Messages
    239

    langage C, localtime, time.h

    est ce que quelqu'un peut m'expliquer le role de le 3 eme et de la 4 eme ligne du code dans la
    Code:
    time_t timestamp;
    struct tm *t;
    	
    timestamp = time (NULL); 
    t = localtime(&timestamp);


    Vous pouvez trouver la fonction complète sur ce lien:

    http://membres.lycos.fr/dancel/c/c110_110.htm


    Merci
     


    • Publicité




      Poursuivez votre recherche
      Recherche personnalisée

  2. zoup1

    Date d'inscription
    juillet 2004
    Localisation
    Paris
    Âge
    47
    Messages
    3 766

    Re : langage C, localtime, time.h

    Ben il me semble qu'il y a a peut prêt tout ce que tu veux dans le lien que tu donnes.
    Sans doute y a t il des choses que tu ne comprends pas dedans...
    Tu sais ce qu'est une structure ?
    Je te donne une idée, tu me donnes une idée, nous avons chacun deux idées.
     

  3. Gre

    Date d'inscription
    juin 2005
    Localisation
    Sherbrooke (Canada)
    Âge
    37
    Messages
    489

    Re : langage C, localtime, time.h

    Pour une fois que tu as fais l'effort de la balise CODE, je me ferais un plaisir de t'aider, même si comme le dit zoup1 tout est compris dans le lien que tu fournis.

    On commence par time_t qui est le type du temps (le deuxième t de time_t sous-entend type). C'est un entier en fait.
    La fonction time te permet de récupérer le temps sous la forme d'un entier. Donc timestamp contient l'heure mais sous la forme d'un entier indiquant le nombre de secondes écoulées depuis le 1er janvier 1970 à 0 heure GMT. Juste après la ligne 3, affiche le contenu de timestamp et tu verras que ce n'est pas très agréable à lire. De plus, ça veut dire que tu dois t'amuser à le convertir en hh:mm:ss à chaque fois que tu compte l'utiliser... pas pratique. C'est là qu'intervient localtime et ctime.
    Ne nous intéressons pas à ctime puisque ce n'est pas là l'objet de ta question.

    La fonction localtime permet de convertir l'entier sous la forme d'un enregistrement (ce qu'on appelle souvent structure). Cet enregistrement contient un champ pour les minutes, les secondes, les jours etc. Voici la déclaration du type tm (c'est-à-dire de l'enregistrement du temps).
    Code:
    struct tm {
      int tm_sec;   /* Secondes */
      int tm_min;   /* Minutes */
      int tm_hour;  /* Heures (0 - 23) */
      int tm_mday;  /* Quantième du mois (1 - 31) */
      int tm_mon;   /* Mois (0 - 11) */
      int tm_year;  /* An (année calendaire - 1900) */
      int tm_wday;  /* Jour de semaine (0 - 6  Dimanche = 0) */
      int tm_yday;  /* Jour dans l'année (0 - 365) */
      int tm_isdst; /* 1 si "daylight saving time" */
    };
    Donc dans ton exemple t.tm_yday te permet d'accéder au jour de l'année correspondant au temps que tu as récupéré à l'aide de time et qui autrement sera codé et illisible a priori.

    Est-ce clair ?
    War does not decide who's right, but who's left. (Bertrand Russell)
     

  4. fderwelt

    Date d'inscription
    février 2006
    Âge
    52
    Messages
    2 041

    Re : langage C, localtime, time.h

    Bonjour,

    On peut aussi préciser que localtime() tient compte du fuseau horaire de la machine. Des fois ça peut créer des surprises...

    -- françois
    Les optimistes croient que ce monde est le meilleur possible. Les pessimistes savent que c'est vrai.
     

  5. lui

    Date d'inscription
    mai 2006
    Messages
    239

    Re : langage C, localtime, time.h

    Si je savais pas qu'est ce qu'une structure, j'aurai pas la possibilité de réaliser un programme en C qui contient plus de 1000 lignes de code de qui fonctionnne bien(Réponse pour le message de zoup1).
    Dans celui ci, j'ai fait appele à la fonction localtime dont j'ai pas bien compris le fonctionnement surtout la ligne
    Code:
    timestamp = time (NULL);
    Dans le lien, on trouve juste une explication de role général la fonction localtime qui convertie le nombre de secondes ecoulés depuis 01/01/1970.

    Ce qui me pose un problème c'est la ligne ci dessus.

    Donc si tu peux m'apporter une explication elle sera la bienvenue.

    Merci d'avance!
     

  6. zoup1

    Date d'inscription
    juillet 2004
    Localisation
    Paris
    Âge
    47
    Messages
    3 766

    Re : langage C, localtime, time.h

    Citation Envoyé par lui Voir le message
    Si je savais pas qu'est ce qu'une structure, j'aurai pas la possibilité de réaliser un programme en C qui contient plus de 1000 lignes de code de qui fonctionnne bien(Réponse pour le message de zoup1).
    Hola, faut pas te sentir agressé, moi je dis cela pour t'aider...
    Sache au moins que les structures ne sont absolument pas indispensable à la réalisation de programme de plusieurs milliers de lignes qui fonctionnent très bien.

    Dans celui ci, j'ai fait appele à la fonction localtime dont j'ai pas bien compris le fonctionnement surtout la ligne
    Code:
    timestamp = time (NULL);
    Dans le lien, on trouve juste une explication de role général la fonction localtime qui convertie le nombre de secondes ecoulés depuis 01/01/1970.

    Ce qui me pose un problème c'est la ligne ci dessus.

    Donc si tu peux m'apporter une explication elle sera la bienvenue.

    Merci d'avance!
    En ce qui concerne ton problème, c'est visiblement la fonction time() qui te pose problème. Je te propose donc d'aller voir dans le même document (http://membres.lycos.fr/dancel/c/c110_110.htm) je ne sais pas bien ce qu'on pourrais en dire de plus.
    Je te donne une idée, tu me donnes une idée, nous avons chacun deux idées.
     


    • Publicité



  7. lui

    Date d'inscription
    mai 2006
    Messages
    239

    Re : langage C, localtime, time.h

    Je me sens pas agressé, juste pour et repondre à ta question.

    MAintenant j'ai bien compris, en fait mon problème se situe au niveau de la fonction time() (j'ai pas vu sa définition au debut de lien).

    Parcontre j'aurai une question sur un autre sujet:
    Est ce que y a une moyen de faire un interface graphique pour un programme ecrit en C en gardant le meme programme.


    Je te remercie beaucoup
     

  8. zoup1

    Date d'inscription
    juillet 2004
    Localisation
    Paris
    Âge
    47
    Messages
    3 766

    Re : langage C, localtime, time.h

    Je vais me dispenser de répondre en détail à cette question car elle est trop générale..
    La réponse est oui...
    Après pour la pratique il faut choisir un environnement pour faire ton interface graphique. Ce choix dépend des contraintes que tu veux mettre sur ton interface. Par exemple si tu veux que ton programme fonctionne uniqument sous Windows ou uniquement sous MacOS ou uniquement sur Linux ou encore sur tout cela... cela conduit à des choix différents...
    Pour ma part, j'ai abondonné l'utilisation d'interface graphique pour mes productions. J'utilise plutot des interfaces via le Web par exemple pour interagir avec mes oeuvres.
    Je te donne une idée, tu me donnes une idée, nous avons chacun deux idées.
     

  9. lui

    Date d'inscription
    mai 2006
    Messages
    239

    Re : langage C, localtime, time.h

    JE comprend pas qu'est ce que est l'interface via le web?

    En fait comme je travaille sous Linux, je pense que celui ci fonctionnera seulement sous Linux
     

  10. zoup1

    Date d'inscription
    juillet 2004
    Localisation
    Paris
    Âge
    47
    Messages
    3 766

    Re : langage C, localtime, time.h

    L'interface Web, ce sont des formulaire en html qui appelles des programmes...
    Généralement ces programmes sont des script PHP, qui ont éventuellement la possiblité d'appeller des programme en C.

    Si tu es sous Linux il y a des environnement de développement comme kde qui te proposes un environnement de travail qui te permet de créer "facilement" une interface graphique à travers l'environnement QT4 (je crois)

    En fait il existe plein de façon différentes de faire... Une bonne pratique est de séparer complètement la partie calcul de la partie interface. Le mieux pour cela est de faire une interface graphique dans le système qui te plait... ce la peut-être du QT du Tk, du Java ou je ne sais quoi encore....
    Je te donne une idée, tu me donnes une idée, nous avons chacun deux idées.
     


    • Publicité




Poursuivez votre recherche :




Sur le même thème :




 

Discussions similaires

  1. langage c, time.h
    Par lui dans le forum Logiciel - Software - Open Source
    Réponses: 5
    Dernier message: 03/05/2007, 00h07
  2. Time Stretching !?
    Par dezbut dans le forum Physique
    Réponses: 3
    Dernier message: 05/09/2006, 22h21
  3. Time Travel
    Par Sycan dans le forum Physique
    Réponses: 6
    Dernier message: 06/12/2005, 18h33


Les tags pour cette discussion