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 une date saisie


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 20
    Par défaut Recuperer une date saisie
    Bonjour, j'ai un projet a realiser pour mon DUT informatique en C.

    Je dois creer un agenda avec des prises de RDV etc. Je suis en binome et donc nous nous partageons le travail. Je dois implementer une fonction qui permet de consulter les rendez-vous de l'utilisateur. Donc, je lui demande la date a laquelle il veut consulter pour lui retourner les rendez-vous pris ce jour:

    void consultation(){

    printf("Veuillez entrer la date a laquelle vous souhaitez consulter vos rendez-vous (format jj/mm/aaaa)\n");

    Ensuite je fais un scanf pour recuperer la date saisie par l'utilisateur mais comment dois-je faire? Parce qu'il y a les slashs!! Ou alors utilisez une autre technique?

  2. #2
    Membre éprouvé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    142
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 142
    Par défaut
    Salut,

    Si l'utilisateur doit obligatoirement entrez sous la forme jj/mm/aaaa alors tu peux créer une chaine de caractère via un tableau de char : char date[11];

    Puis demander la saisie via gets(date);

    Ainsi tu pourra traiter la chaine et si besoin est, de convertir les jj, mm et aaaa en entier via atoi();

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 20
    Par défaut
    Hum ouai je vois mais pourquoi char[11] alors qu'il n'y a que 10 caracteres? et puis qu'est-ce que atoi()? ^^'

    Ah petit edit: La fonction atoi permet de transformer une chaine de caractere en entier. Mais je ne vois pas du tout comment elle s'utilise...

  4. #4
    Membre éprouvé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    142
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 142
    Par défaut
    11 pour le caractère de fin de chaîne '\0', et voici un petit exemple d'utilisation de la fonction atoi();

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
      int i;
      char ma_chaine[11] = "45";
      i = atoi(ma_chaine);
      printf("->%ld<-",i);

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 20
    Par défaut
    D'accord merci cela m'aide bien mais j'ai encore 2 ptites questions. Je suis debutant alors...

    Hum c'est quoi le "/0" >> caractere de fin de chaine
    ca correspond a quoi? quel utilité?

    Ensuite la fonction atoi() ne me renvoit que les 2 premiers caracteres!! comment avoir les prochains? (si l'user rentre une date 20/11/2008 cela me retourne 20)

  6. #6
    Membre éprouvé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    142
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 142
    Par défaut
    Pour le caractère de fin de chaîne, je t'invite à lire la FAQ de développez.com ici http://c.developpez.com/faq/?page=st...NGS_definition

    Concernant la fonction atoi() elle renvoie la premiere valeur qu'elle trouve dans une chaîne de caractère, donc la c'est a toi de trouver une astuce

    Tu peux soit crée 3 tableau de char avec jj , mm et aaaa.
    soit tu fait plus compliquer avec la fonction strtok (qui n'est pas très apprécié)

Discussions similaires

  1. Recherche a récupérer ce qui est entre une date saisie et 9999-12-31
    Par Lolie11 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/06/2007, 14h58
  2. recuperer une date dans calendrier?
    Par gatous dans le forum ASP.NET
    Réponses: 3
    Dernier message: 30/05/2007, 20h02
  3. recuperer une chaine saisie en clavier
    Par salim81 dans le forum Langage
    Réponses: 1
    Dernier message: 07/09/2006, 10h31
  4. Recuperer une date au format annee/mois
    Par Pogny dans le forum Access
    Réponses: 5
    Dernier message: 10/08/2006, 13h39
  5. Recuperer une date et une heure.
    Par bygui dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 23/06/2006, 11h28

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