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 0*c0000005 codeblocks compilation


Sujet :

C++

  1. #1
    Membre régulier
    Profil pro
    Doctorant
    Inscrit en
    Février 2011
    Messages
    258
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 258
    Points : 88
    Points
    88
    Par défaut erreur 0*c0000005 codeblocks compilation
    svp j'ai un problème avec l’exécution d'un programme en c++ sur codeblocks j'ai aussi utilisé opencv 1.0 et j'ai respecté les étapes de l'installation et tt .
    voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    #include <iostream>
    #include <cv.h>
    #include <highgui.h>
    using namespace std;
     
    int main()
    {
        IplImage *img;
        IplImage *img_nvg;
        IplImage *img_m;
     
        img = cvLoadImage("1.jpg");
        //img_nvg= cvCreateImage(cvGetSize(img),IPL_DEPTH_8U,1);
        img_m=cvCloneImage(img);
     
        int flip = 0;
        if (img-> origin != IPL_ORIGIN_TL)
          {flip = CV_CVTIMG_FLIP;}  //corriger l'orogine
          cvConvertImage(img,img_m,flip);
     
        CvMat* matr=cvCreateMat(3,3,CV_32FC1);
     
        //remplissage du masqque de matr
        cvmSet(matr,0,0,1.0/9.0);
        cvmSet(matr,0,1,1.0/9.0);
        cvmSet(matr,0,2,1.0/9.0);
        cvmSet(matr,1,0,1.0/9.0);
        cvmSet(matr,1,1,1.0/9.0);
        cvmSet(matr,1,2,1.0/9.0);
        cvmSet(matr,2,0,1.0/9.0);
        cvmSet(matr,2,1,1.0/9.0);
        cvmSet(matr,2,2,1.0/9.0);
     
        cvFilter2D(img,img_m,matr);
     
        //for (int x=0)
     
     
     
          //cvSmooth( img,img_m, CV_MEDIAN, 3, 3 );
     
          cvNamedWindow("Originale",CV_WINDOW_AUTOSIZE);
          cvNamedWindow("m",CV_WINDOW_AUTOSIZE);
          cvShowImage("Originale",img);
          cvShowImage("m",img_m);
          cvWaitKey(0);
          cvReleaseImage(&img);
          cvReleaseImage(&img_m);
     
     
        return 0;
    }
    sachant que je l'ai testé sur une autre machine et il marche
    je sais pas c'est quoi l'origine de cette erreur
    merci d'avance

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Bonjour,

    ceci est un code erreur générique de Windows XP d'après les premiers liens google.
    Problème de drivers en tête, programme récemment instalé, ...
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    533
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 533
    Points : 1 086
    Points
    1 086
    Par défaut
    Je te dirais bien d'utiliser un débuggeur, mais comme celui de CodeBlocks est tout moisi ( :trollface: ), le mieux est peut-être de catcher les exceptions de ton code. Parce que oui, ce n° d'erreur barbare c0000005 de Windows correspond sûrement à une exception OpenCV non gérée.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    int main() {
      try {
        ... ton code ici ...
      } catch (const cv::Exception& e) {
        std::cout << e.what() << std::endl;
      }
    }
    Peut-être que le test ligne 17 n'est pas vérifié, donc flip vaudrait 0, ce qui semble ne pas être une valeur de flag valide pour cvConvertImage dans la doc (CV_CVTIMG_FLIP=1 ou CV_CVTIMG_SWAP_RB=2)

  4. #4
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 031
    Points : 11 391
    Points
    11 391
    Billets dans le blog
    11
    Par défaut
    0xC0000005 => Access violation
    Ca veut dire que tu essaies d'accéder à une fonction ou à un membre d'un truc qui n'est pas initialisé.
    Ca arrive par exemple quand on utilise un membre d'un pointeur nul (ou non initialisé), et dans ton code, tu ne vérifies pas que tes pointeurs sont valides avant de les utiliser (img, img_m, matr).
    Fais les vérifications et peut-être que tu auras moins de problèmes.


    EDIT : Et aussi, initialise les à NULL quand tu les déclares, ça simplifiera tes vérifications.
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

Discussions similaires

  1. Erreur lors de la compilation avec OmniORB
    Par JohnKwada dans le forum CORBA
    Réponses: 1
    Dernier message: 07/09/2006, 17h34
  2. erreur lors de la compilation
    Par ksoft dans le forum MFC
    Réponses: 2
    Dernier message: 02/05/2006, 15h40
  3. Réponses: 11
    Dernier message: 02/05/2006, 13h16
  4. Réponses: 4
    Dernier message: 22/02/2006, 14h11
  5. Erreur avec Glibc en compilation croisée
    Par Senaku-seishin dans le forum Linux
    Réponses: 2
    Dernier message: 02/12/2005, 14h12

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