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 :

erreur introuvable dans un programme très simple avec des listes chainées


Sujet :

C

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Mars 2009
    Messages : 33
    Points : 30
    Points
    30
    Par défaut erreur introuvable dans un programme très simple avec des listes chainées
    Bonjour,

    voila: mon programme marchait encore il y a une semaine mais aujourd'hui, je le relance et rien a faire, il bug.

    Le programme est un echeancier.
    Il gere en entrée des fichiers textes comme celui en piece jointe:

    explication: 200921110TP DE AAA
    année: 2009
    semaine: 21
    jour: 1
    heure: 10
    action: TD DE AAA

    Il utilise deux structures: une pour l'année et la semaine, une autre pour le jour, l'heure et les actions

    j'ai deja posté pour des parties de ce programme, voici les adresses:
    http://www.developpez.net/forums/d71...ainee-niveaux/

    http://www.developpez.net/forums/d71...reur-pointeur/

    Je ne peux plus rechercher une action sans qu'il plante
    J'ai cherché les erreurs mais rien n'a transpiré

    De plus, je peux rechercher une action et la supprimer sans planter.

    C'est vraiment une erreur bizarre, mes fonctions de recherche marchent: (une pour l'année et la semaine, une autre pour le jour et l'heure) car je peux les utiliser dans la partie supprimer mais je ne peux afficher l'action:

    c'est le: "case 4" dans le main qui ne marchent plus, tout le reste est bon

    En piece jointe, le programme commenté en partie et le fichier texte

    Merci d'avance

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 894
    Points : 219 533
    Points
    219 533
    Billets dans le blog
    124
    Par défaut
    Bonjour,

    Première grosse remarque, lorsque tu déclare des variables , inialise les.
    Example, dans le main du déclare un int menu;
    Par chance ( ou pas ) ma mémoire est à zero ( ou alors mon compilateur est precautionneux ) donc menu qui est texté par le while tout de suite après, aura une valeur qui souvent est l'ancienne valeur de la case mémoire du PC, qui peut être n'importe dépendant de ce que tu as démarré sur ton PC.
    Donc, je te conseille de faire très attention à cela, est c'est peut être pour un cas équivalent que ton programme fonctionner il y a une semaine et pas maintenant, juste parce qu'il y a une valeur non initialisé et qui fait tout planter aujourd'hui et que tu avais de la chance avant ...

  3. #3
    Expert éminent sénior
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Points : 13 926
    Points
    13 926
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    int main()
    {
    ....
        int menu;
    ....
        while (menu != 0)...
    menu, non initialisé. Faire plutôt une boucle do...while(menu != 0) au lieu d'une boucle while()...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        char numjour;
    ....
                case 4:
    ....
                    scanf("%s",numjour);
    La lecture d'une chaîne impose pour numjour un tableau, pas un char.
    Utiliser comme plus loin
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                    scanf("%c%*c",&numjour);
    Ca devrait arranger les choses.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Mars 2009
    Messages : 33
    Points : 30
    Points
    30
    Par défaut
    En effet, le probleme est resolu

    merci beaucoup!

    ps:je caste les mallocs, j'imprime puis fini, j'attaque les
    TP avec les arbres :snif

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 104
    Points : 1 750
    Points
    1 750
    Par défaut
    ps:je caste les mallocs
    En principe, on ne caste pas les malloc (qui est un pointeur sur void).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Polynômes avec des listes chainées
    Par yahia.ntic dans le forum C
    Réponses: 1
    Dernier message: 25/03/2014, 00h05
  2. Améliorer un programme très simple
    Par Alp dans le forum Prolog
    Réponses: 6
    Dernier message: 15/03/2008, 11h17
  3. BO - Rapport très simple avec une Somme
    Par claclapub dans le forum Deski
    Réponses: 12
    Dernier message: 18/07/2007, 13h49
  4. [EasyPHP] Erreur introuvable dans le script php
    Par ultrabody dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 10
    Dernier message: 14/03/2007, 10h21
  5. Erreur introuvable dans requete
    Par cyrill.gremaud dans le forum ASP
    Réponses: 5
    Dernier message: 19/07/2006, 15h43

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