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 :

Détection d'une architecture 64-bits


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de nicolas66
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    326
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 326
    Par défaut Détection d'une architecture 64-bits
    Bonjour !

    Pour les besoins d'un projet, j'aimerai savoir comment je peux arriver à détecter si mon programme tourne sur une architecture 64-bits grâce à des flags préprocesseurs. Merci d'avance pour votre aide


    Nico.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    258
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 258
    Par défaut
    Sous gcc, on a __WORDIZE qui vaut 32 ou 64. Sous VC++, tu dois pouvoir te débrouiller avec la macro _WIN64. Pour les autres compilateurs, je ne sais pas, il n'y a rien de standard, à moins de jouer avec sizeof(void*).

  3. #3
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    Un bon point de départ : http://predef.sourceforge.net (section "Architectures").

  4. #4
    Membre éclairé Avatar de nicolas66
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    326
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 326
    Par défaut
    Merci pour le site mais je l'avais déjà visité hier (un site très utile au passage). Je ne suis pas sûr que ce soit suffisant de faire un truc de ce style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #if defined(__amd_64__) || defined(__ia64__)
            // alors on a affaire à un processeur 64 bits
    En effet, je pense qu'il doit exister des processeurs powerpc ou mips en version 64 bits pour lesquels il n'existe apparement pas de flags (d'après le site). Et si c'était le cas, je devrai être obligé de trouver tous les flags des processeurs existants

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 464
    Par défaut
    Citation Envoyé par nicolas66
    Et si c'était le cas, je devrai être obligé de trouver tous les flags des processeurs existants
    Je pense que c'est plutôt une question de SDK que de processeur. C'est donc AMHA plutôt dans les docs des SDK qu'il faut fouiner.

    De toute façon, lorsqu'on développe un projet portable on cherche généralement à savoir par quoi on est compilé (au niveau préprocesseur) de façon à éviter certains problèmes d'incompatibilité entre compilateurs, ou exploiter des spécificités.

    La démarche pour le 32/64 bits est (ou devrait en tout cas) être la même...

  6. #6
    Membre éclairé Avatar de nicolas66
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    326
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 326
    Par défaut
    Citation Envoyé par rigobert
    Je pense que c'est plutôt une question de SDK que de processeur. C'est donc AMHA plutôt dans les docs des SDK qu'il faut fouiner.
    Qu'est-ce que AMHA ?

Discussions similaires

  1. Simulation d'une architecture de détection d'intrusion sous NS2
    Par elajjouri dans le forum Développement
    Réponses: 1
    Dernier message: 12/07/2014, 04h26
  2. Réponses: 7
    Dernier message: 21/10/2004, 09h13
  3. Réponses: 3
    Dernier message: 23/06/2004, 21h17
  4. Réponses: 2
    Dernier message: 14/06/2004, 15h18
  5. Comparaison d'un registre 8 bits avec une variable 32 bits
    Par tupperware dans le forum x86 32-bits / 64-bits
    Réponses: 3
    Dernier message: 15/10/2002, 10h25

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