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 :

comment supprimer les warning gcc


Sujet :

C++

  1. #21
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Citation Envoyé par loufoque Voir le message
    Encore heureux que GCC te donne un warning, tu invoques un comportement indéfini.

    Ce n'est pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            #ifdef _WIN32
            fscanf(f,"%d %I64i %lf ",&n,&N0,&ms);
            #else
            fscanf(f,"%d %llu %lf ",&n,&N0,&ms);
            #endif
    qu'il faut faire... Le premier cas n'est pas à utiliser sous win32, mais sous Visual C++.
    Tu as tout faux.
    Le premier cas est à utiliser sous MinGW, parce qu'il utilise la bibliothèque runtime de Visual 6; ainsi que toute version de Visual strictement inférieure à 8.

    En clair, il faudrait plutôt un truc comme ça:
    Code C : 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
    #ifndef USE_I64_FOR_LONGLONG_FORMAT
    	//If compiling for Win32 but not for Visual 8.0 or later,
    	//Use %I64d or %I64u for long long format.
    	#if defined(_WIN32) && !(defined(_MSC_VER) && _MSC_VER >= 1400)
    		#define USE_I64_FOR_LONGLONG_FORMAT 1
    	#else
    		#define USE_I64_FOR_LONGLONG_FORMAT 0
    	#endif
    #endif
     
    ...
     
    	#if USE_I64_FOR_LONGLONG_FORMAT
    		fscanf(f, "%d %I64i %lf ", &n, &N0, &ms);
    	#else
    		fscanf(f, "%d %llu %lf ", &n, &N0, &ms);
    	#endif
    Par contre, même les versions récentes du run-time de Visual ne supportent pas %z pour les types comme size_t. Dans tous les cas, sous Windows, on est obligé d'utiliser %Id ou %Iu.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  2. #22
    Membre éprouvé Avatar de uriotcea
    Homme Profil pro
    Ingénieur / physicien
    Inscrit en
    Septembre 2003
    Messages
    1 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur / physicien
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2003
    Messages : 1 301
    Par défaut
    Ok avec medinoc & 3Darchi
    Je suis bien sous minGW avec la runtine6
    Et avec "ignored" ca supprime bien les warning

    Merci à tous

Discussions similaires

  1. Comment supprimer les doublons
    Par djelloulc dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 17/09/2013, 14h30
  2. Comment supprimer les doublons?
    Par Dnx dans le forum Langage SQL
    Réponses: 3
    Dernier message: 24/11/2005, 16h35
  3. [vbexcel]Comment supprimer les doublons dans une combobox?
    Par Mugette dans le forum Macros et VBA Excel
    Réponses: 20
    Dernier message: 24/11/2005, 11h12
  4. Comment supprimer les tags RTF
    Par Dnx dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 20/09/2005, 14h55
  5. [String] Comment supprimer les accents
    Par iuz dans le forum Collection et Stream
    Réponses: 7
    Dernier message: 08/03/2004, 02h58

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