Partage
  • Partager sur Facebook
  • Partager sur Twitter

[C] Debugger

Sous Dev - C++

Sujet résolu
    14 avril 2006 à 11:13:38

    Bonjours tout le monde...

    :)

    Voila mon probleme si s'en est un:
    Lorsque je lance l'outil "debug" (avec Dev - C++)sur mon code en C une fenetre d'alerte s'affiche et me dit gentilment:

    Citation : Dev - C++

    Une violation d'accès (erreur de segmentation) est apparue dans votre programe.

    (Le petit panneau jaune est là lui aussi :euh: )

    Bref je ne comprend que vaguement la signification de ce message...de plus mon programe marche normalement (un peu lent).

    J'vais pas vous embrouiller avec mon code qui est un peu long :-°
    Vous pouvez le telecharger ici (enregistrer le fichier "Lentille.rar")...
    Surtout ne regardez pas le site :p j'en ai honte...

    Je voudrait simplement savoir si vous savez d'où ca pourrait bien venir et si ca peut avoir un rapport avec la vitesse d'execution ou des temps d'attente occasionnels o_O (ca c'est peu etre mon ordi)
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      14 avril 2006 à 11:14:57

      erreur de segmentation ca vient d'une erreur avec les pointeurs très souvent
      • Partager sur Facebook
      • Partager sur Twitter
        14 avril 2006 à 11:20:54

        Citation : MetalDwarf sur cppfrance 28/05/2005

        Une erreur de segmentation intervient lorsque le programme tente d'accéder à des données qui ne lui appartiennent pas (accès à une adresse qui n'est pas "mappée" par le processus).
        Engros, ce que ca veut dire c'est que tu as du depasser les limites du tableau dans cette instruction.
        ex: char tab[50];

        tab[50] ='\0'; <-- Erreur car le dernier element du tableau est 49


        Le probleme des erreurs de segmentation est qu'elle ne sont pas toujours détectées tout de suite, car parfois les données "au-delà" des bornes appartienent bien au programme (c'est la dessus que reposent les failles par "buffer overflow").



        En espérant que tu trouveras d'où peut bien provenir l'erreur ! Bonne journée !

        Source : http://www.cppfrance.com/forum.v2.aspx?ID=468267
        • Partager sur Facebook
        • Partager sur Twitter
        Inkamath on GitHub - Interpréteur d'expressions mathématiques. Reprise du développement en cours.
          14 avril 2006 à 11:54:07

          Faille buffer overflow? une faille psp ca :p

          sinon pour mon erreur ... :
          -j'ai pas de tableau (ou de map)dans ce code :euh:
          -les pointeurs j'en ai pour les surfaces SDL (mais c'etait ca le code ne fonctionnerai meme pas :( )
          Et j'ajoute aussi que tout mes codes reagissent de la meme maniere...

          mais c'est peu etre justement a cause des maps...que je n'ai pas encore appris
          (matéo si tu m'entend :-° )
          Dev - C++ ne comprend peu etre pas pourquoi je ne les utilise pas...
          (Dev : il est con ce programeur) :'(
          • Partager sur Facebook
          • Partager sur Twitter
            14 avril 2006 à 11:57:39

            Met un .zip, ou une archive plus courante que .rar la prochaine fois.
            • Partager sur Facebook
            • Partager sur Twitter
              14 avril 2006 à 12:07:34

              Desole j'utilise winrar alors j'y ai pas fait attention :euh: ...je change sa tout de suite ^^
              • Partager sur Facebook
              • Partager sur Twitter
                14 avril 2006 à 12:16:13

                J'ai regardé un peu ton code, et initialement tu Blit tes lentilles en dehors de l'écran... A mon avis le problème vient de là, vue que tu as du bliter les images en dehors de l'espace réservé pour ton processus :)
                Pour ne pas les afficher au départ essaye de trouver une autre méthode ! A ta place j'aurais fait une structure lentille avec les coordonnées de la lentille et un bool que l'on doit vérifier pour savoir si on doit blitter au non la lentille.. :)
                Je suis peut être un peu dingue des listes chaînées, mais à ta place j'aurais fait une liste chaînée avec tes lentilles :p
                • Partager sur Facebook
                • Partager sur Twitter
                Inkamath on GitHub - Interpréteur d'expressions mathématiques. Reprise du développement en cours.
                  14 avril 2006 à 12:44:23

                  J'ai essayé de les coller a l'interieur de l'ecran des le depart pour tester mais ca ne change rien, domage ca paraissait vraiment plausible ;)

                  Je me demande si c pas le debug qui est un peu foireux :D (bon c pas tres probable)
                  ...il m'indique cette erreur sans me dire d'ou elle provien (pas de ligne, pas de fonction ni de variable...rien o_O ) il est pas simpa il pourrai me dire la ou la repere c la mondre des chose :p
                  • Partager sur Facebook
                  • Partager sur Twitter
                    14 avril 2006 à 15:03:05

                    Citation : Teos

                    Je me demande si c pas le debug qui est un peu foireux :D (bon c pas tres probable)



                    Moi je dis que c'est probable ^^ J'ai jamais réussi a faire démarrer un débuggeur sauf celui de Code::Blocks (Mais bon ça m'a pas avancé puisque j'ai rien compris la dedans :p )
                    • Partager sur Facebook
                    • Partager sur Twitter
                      14 avril 2006 à 15:16:30

                      Citation : bluestorm

                      Met un .zip, ou une archive plus courante que .rar la prochaine fois.


                      7-zip est ton ami

                      http://www.7-zip.org/fr/
                      • Partager sur Facebook
                      • Partager sur Twitter
                      Music only !
                        14 avril 2006 à 16:51:02

                        Bon merci a tous, je pense pas qu'il y ai de gros problemes dans mon code :-° (pour une fois)

                        Surment Dev-C++ qui a du mal a bien comprendre SDL je sais pas mais bon comme tout marche...
                        je vais indiquer le probleme comme resolu.

                        Et merci pour 7-zip mais je suis bien avec winrar le format est plus compact et window me fait les zip tout seul :p
                        • Partager sur Facebook
                        • Partager sur Twitter

                        [C] Debugger

                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                        • Editeur
                        • Markdown