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

Langage PHP Discussion :

Opérateur << : shift ?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Avatar de Amnesiak
    Profil pro
    Inscrit en
    Août 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2002
    Messages : 137
    Par défaut Opérateur << : shift ?
    Bonjour à tous,

    Je suis tombé sur cette instruction, et j'aimerais savoir d'après vous, quel est l'effet qu'elle provoque ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    define('DEBUG_CORE_ERROR', 1 << 0);
    C'est précisément l'opérateur << qui m'intrigue... s'agit-il bien de l'opérateur "shift gauche" (décalage de bits) ? Quel est le résultat de 1 << 0, et pourquoi avoir effectué cela pour initialiser une contante ?

    Un grand merci à vous pour vos avis!

  2. #2
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    C'est bien le décalage de bits, mais décaler de zéro bits vers la gauche je ne vois pas l'intérêt...

  3. #3
    Membre éprouvé Avatar de Cyberbob002
    Inscrit en
    Mai 2003
    Messages
    140
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 140
    Par défaut
    Pour embrouiller les mecs qui connaissent pas bien le code ??
    En tout cas c'est étrange ... ^^

  4. #4
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    apres une recherche sur google code, j'ai peut etre un debut de réponse ;o)

    en effet, cette instruction declare bien une constante avec une valeur de 1... mais on peut imaginer la suite du code qui pourrait etre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    define('DEBUG_CORE_ERROR',     1 << 0); // vaudra 1
    define('DEBUG_CORE_WARNING',   1 << 1); // vaudra 2
    define('DEBUG_CORE_INFO',      1 << 2); // vaudra 4
    define('DEBUG_CORE_FATAL',     1 << 3); // vaudra 8
    define('DEBUG_CORE_EXCEPTION', 1 << 4); // vaudra 16
    et là tout s'explique :
    on utilise uniquement cette syntaxe afin de créé facilement une liste de valeurs sur les multiples de 2 pour les différentes constantes. Sans doute le developpeur était il habitué a cette syntaxe ;o)

  5. #5
    Membre Expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Par défaut
    Citation Envoyé par Fladnag
    apres une recherche sur google code, j'ai peut etre un debut de réponse ;o)

    en effet, cette instruction declare bien une constante avec une valeur de 1... mais on peut imaginer la suite du code...
    En effet ça prend tout son sens. Merci de l'éclairage !

Discussions similaires

  1. [Binaire] Opérateurs de rotation dee bits ?
    Par Tifauv' dans le forum C
    Réponses: 3
    Dernier message: 09/11/2017, 11h29
  2. SHIFT + 1
    Par Invité dans le forum C++Builder
    Réponses: 4
    Dernier message: 07/11/2003, 18h34
  3. Opérateur like
    Par Troopers dans le forum ASP
    Réponses: 3
    Dernier message: 15/09/2003, 19h19
  4. opérateur non applicable à ce type d'opérande
    Par Amon dans le forum Langage
    Réponses: 3
    Dernier message: 11/06/2003, 18h07
  5. [imprecis]Réaliser a^n avec seulement l'opérateur d'addition
    Par Amon dans le forum Algorithmes et structures de données
    Réponses: 18
    Dernier message: 08/11/2002, 22h22

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