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 :

dechiffrage d'une ligne de code


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2007
    Messages : 104
    Par défaut dechiffrage d'une ligne de code
    Bonjour
    J'ai du mal a dechiffrer ce qu'il se passe dans cette ligne recuperee dans une librairie codee en C :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return(user->info.options == T_INFINITE ? MAXINT : (user->info.options >= 0 ? user->info.options : 0))
    Quelqu'un peut-il me dire comment lire cette ligne svp ?
    merci par avance !!

    pepito

  2. #2
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Il s'agit d'une manière illisible de dire:

    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
    /* Soit user un pointeur sur une structure contenant un champs info qui est une structure contenant le champs options */
     
    int ret;
     
    if (user->info.options == T_INFINITE)
    {
        ret = MAXINT;
    }
    else if (user->info.options >= 0)
    {
        ret = user->info.options;
    }
    else
    {
        ret = 0;
    }
     
    return ret;
    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  3. #3
    Expert confirmé
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Par défaut
    Retourner
    - SI user->info.options == T_INFINITE, la valeur MAXINT
    - SINON  
         - SI user->info.options >= 0, la valeur user->info.options
         - SINON la valeur 0
    Ce n'est pas illisible, mais la présentation ne favorise pas la compréhension.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    return  user->info.options == T_INFINITE ? MAXINT 
                                             : user->info.options >= 0 ? user->info.options 
                                                                       : 0 ;

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2007
    Messages : 104
    Par défaut merci
    Merci a vous deux pour vos reponses !
    En effet, c'est plutot "contracté" comme formulation mais merci a vous de l'avoir dechiffré !


    pepito

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. besoin d'aide sur une ligne de code
    Par deubelte dans le forum C++
    Réponses: 5
    Dernier message: 26/11/2006, 21h55
  2. Réponses: 5
    Dernier message: 02/09/2006, 15h10
  3. [VB2005] conversion d'une ligne de code de C# > vers VB2005
    Par DonJR dans le forum Windows Forms
    Réponses: 2
    Dernier message: 26/07/2006, 23h08
  4. [Tableaux] Explication d'une ligne de code
    Par eXiaNazaire dans le forum Langage
    Réponses: 3
    Dernier message: 30/03/2006, 13h09
  5. PB sur une ligne de code
    Par romrai dans le forum Access
    Réponses: 2
    Dernier message: 22/02/2006, 11h27

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