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 :

"Borner" une variable


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé

    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    532
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2011
    Messages : 532
    Par défaut "Borner" une variable
    Bonjour a toutes et tous,

    J'ai une question peut-être un peu bizarre, et je ne sais même pas si c'est réalisable mais je tente quand même. Je voudrai savoir s'il est possible de "borner" une variable lors de sa déclaration: par exemple je déclare une variable int i, et je veux que la valeurs ce recevra soit toujours compris entre 1 et 8 (si la valeur est en dessous de 1, elle est ramenée a 1, si la valeur est au dessus de 8, elle est ramenée a 8).

    Je souhaite faire cela lorsque je déclare ma variable, et pas en utilisant des structure condition genre if...else, etc ...

    Donc est-ce possible ???

    Dans l'attente de vos réponses,
    Cordialement;

  2. #2
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2009
    Messages
    4 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 493
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Ce n'est pas possible. La solution est de faire une fonction d'initialisation.

    Exemple :
    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
    19
    20
    #define MIN 1
    #define MAX 8
    int init(int value)
    {
        if(value < MIN)
            return MIN;
        else if(value > MAX)
            return MAX;
        else
            return value;
    }
     
    int main(void)
    {
        int a = init(-42);
        int b = init(42);
        int c = init(2);
     
        printf("%d %d %d\n", a, b, c);
    }

  3. #3
    Membre éclairé

    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    532
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2011
    Messages : 532
    Par défaut
    Ok merci pour la réponse, je m'en doutais un peu mais je voulais en être sur, merci

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 01/05/2009, 16h35
  2. Mettre une variable entre quotes
    Par laurentibus dans le forum PL/SQL
    Réponses: 7
    Dernier message: 12/12/2008, 17h12
  3. quotes dans une variable
    Par requiemforadream dans le forum ASP
    Réponses: 3
    Dernier message: 09/05/2005, 09h55

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