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 :

[Error C3163] Problème avec _vsnprintf et VS 9.0


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 6
    Par défaut [Error C3163] Problème avec _vsnprintf et VS 9.0
    Bonjour,

    Je reprends un projet compilé avec VC++ 2005 et wxDev-cpp et à la compilation ce message apparait :
    358 C:\Program Files\Microsoft Visual Studio 9.0\VC\include\stdio.h [Error C3163] '_vsnprintf'ÿ: attributs non cohérents avec la déclaration qui précède

    J'ai essayé plusieurs inclusions du fichier stdio.h et j'ai également vu qu'il y avait un problème de définition de la fonction. Pourriez-vous m'aider s'il vous plait ?

    pititmat90

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 126
    Par défaut
    Bonjour,

    Apparemment, problème connu :
    Ci-dessous, une "résolution" possible :
    http://rjeng.blogspot.com/2008/06/vc...ttributes.html

    Cordialement,
    Agamitsudo.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 6
    Par défaut
    Bonjour,

    Merci pour ta réponse premièrement.
    Mais j'avais déjà vu cela et je n'utilise pas cette bibliothèque par contre j'utilise wxwidgets, le problème peut-il venir de là ?

    Cordialement,

    pititmat90

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 126
    Par défaut
    Re-bonjour,

    Oui, car il est possible (probable) que wxwidgets apporte une redéfinition de vsnprintf.
    Donc, il faut rechercher cette définition du type ci-dessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #define vsnprintf(a, b, c, d) _vsnprintf(a, b, c, d)
    Et la commenter.

    Cordialement,
    A.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 6
    Par défaut
    Re-bonjour,

    J'ai trouvé cela dans wxchar.h :


    For some systems [v]snprintf() exists in the system libraries but not in the
    headers, so we need to declare it ourselves to be able to use it.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    #if defined(HAVE_VSNPRINTF) && !defined(HAVE_VSNPRINTF_DECL)
    #ifdef __cplusplus
        extern "C"
    #else
        extern
    #endif
        int vsnprintf(char *str, size_t size, const char *format, va_list ap);
    #endif /* !HAVE_VSNPRINTF_DECL */
    J'avoue ne pas trop maitriser tout ce qui est .h, mais cela a l'air d'avoir un rapport avec ce que tu viens de me suggérer, non ?

    Merci de ton aide,

    Pititmat90

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 126
    Par défaut
    Re-bonjour,

    Fait le test de commenter le bout de code que tu viens de poster.
    Cordialement,
    A.

  7. #7
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Plutôt que de commenter la ligne, définit la macro HAVE_VSNPRINTF_DECL dans ton projet. Ca t'évites de toucher au source

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 6
    Par défaut
    Merci pour vos propositions, j'ai testé et cela n'a pas permis de régler le problème.

    Je pense que que le soucis vient peut-être du fait que je ne sais pas quelle bibliothèque fait appel à stdio.h et à quel moment. Rien ne me dit que c'est le bon stdio.h qui est appelé au moment oppurtun. J'ai celui de wxDev-cpp et celui de VS au moins. Ensuite d'autres bibliothèques peuvent certainement en appeler d'autres dès qu'elle en ont besoin.

    Je ne sais pas si j'arrive bien à exprimer ma pensée mais il faudrait que je trouve le moyen que seul celui de Visual Studio soit appelé. Après, je ne sais pas si telle est la solution.

    pititmat90

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 13
    Par défaut
    Hi,

    est ce que tu pourrais poster les options de projet et de compilateur, cela aidera peut-être.

    ps : le .h est un fichier dit 'header' qui contient les prototypes des fonctions (les noms, types passés, et renvoyés), ainsi que les déclaration de classe, et qui permet au compilateur de vérifier la cohérence du code.

Discussions similaires

  1. Réponses: 1
    Dernier message: 02/05/2007, 16h43
  2. [TP 7] Problème avec les listes chaînées (error 202)
    Par thelinekioubeur dans le forum Turbo Pascal
    Réponses: 4
    Dernier message: 06/12/2006, 23h15
  3. [TP] Problème avec Error 202
    Par Petrucci dans le forum Turbo Pascal
    Réponses: 4
    Dernier message: 11/11/2006, 22h37
  4. Réponses: 3
    Dernier message: 17/09/2006, 23h13
  5. Réponses: 21
    Dernier message: 02/10/2005, 19h05

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