// Vous lisez...

Les bases

2- Les opérateurs du Language C

1. Les opérateurs arythmétiques

Tout d’abord les quatre opérations bien connues :

  • L’addition : le signe ’+’

    il est donc possible dans le programme C suivant ( test_plus.c ) de faire :

  • La soustraction : le signe ’-’

    il est donc possible dans le programme C suivant ( test_moins.c ) de faire :

  • La multiplication : le signe ’*’

    il est donc possible dans le programme C suivant ( test_x.c ) de faire :

  • La division : le signe ’/’

    il est donc possible dans le programme C suivant ( test_div.c ) de faire :

    Ensuite, un opérateur moins connu mais très utile, qui va nous permettre de connaître le reste d’une division entre deux entiers.

  • Le modulo : le signe ’%’

    il est donc possible dans le programme C suivant ( test_mod.c ) de faire :

2. Les opérateurs et expressions d’affectation de variables

  • L’affectation simple : le signe ’=’

    il est donc possible dans le programme C suivant ( test_affect.c )de faire :

  • L’affectation avec incrémentation : le signe ’=’ precede d’un autre opérateur

    il est donc possible dans le programme C suivant ( test_incr.c ) de faire :

    Ce ’mélange des opérateurs’ peut aussi s’appliquer aux opérateurs de manipulation de bits

3. Les opérateurs de comparaison

  • La comparaison d’égalité : le signe ’==’

    Cet opérateur va nous permettre de tester si deux variables sont égales. il est donc possible dans le programme C suivant ( test_egal.c ) de faire :

  • La comparaison de différence : l’opérateur ’ !=’

    Cet opérateur va nous permettre de savoir si deux variables sont différentes. il est donc possible dans le programme C suivant ( test_diff.c ) de faire :

  • La comparaison d’infériorité : les opérateurs ’<’ et ’<=’

    Ces opérateurs va nous permettre de savoir, respectivement, si une variable est ’inférieure’(<) ou ’inférieure ou égale’(<=) à une autre. il est donc possible dans le programme C suivant ( test_inf.c ) de faire :

  • La comparaison de supériorité : les opérateurs ’>’ et ’>=’

    Ces opérateurs va nous permettre de savoir, respectivement, si une variable est ’supérieure’(>) ou ’supérieure ou égale’(>=) à une autre. il est donc possible dans le programme C suivant ( test_sup.c ) de faire :

4. Les opérateurs d’incrémentation/décrémentation

Ici, rien de bien sorcier, seulement deux opérateurs ( ++ et — ) :

  • L’opérateur ’++’

    Cet opérateur sert a incrémenter ( ajouter 1 a une variable ). il est donc possible dans le programme C suivant ( test_incr2.c ) de faire :

  • L’opérateur ’—’

    Cet opérateur sert a décrémenter ( enlever 1 a une variable ). il est donc possible dans le programme C suivant ( test_decr.c ) de faire :

5. Les opérateurs de manipulation des bits

Attention, là, ça se corse carrément, personne ne vous en voudra de passer a la suite et de revenir ici plus tard :

Les opérateurs logiques : ’&’, ’|’, ’ ’ et ’^’

Ces opérateurs servent à manipuler les bits qui composent une variable. Les types de variables auxquels ces opérateurs s’appliquent sont :

  • int : Les entiers
  • long int : Les entiers longs
  • unsigned int : Les entiers non signés ( supérieurs a 0 )
  • char : un caractère
  • unsigned char : un caractère aussi

ATTENTION, ces opérateurs ne s’appliquent pas aux types float, double ( chiffres réels avec virgule ).

  • Le et binaire : l’opérateur ’&’

    Cet opérateur sert a ne garder que les bits qui se trouvent dans les deux variables auxquelles s’applique le et binaire. il est donc possible dans le programme C suivant ( test_et.c ) de faire :

  • Le ou binaire : l’opérateur ’|’

    Cet opérateur sert a ajouter certains bits a une variable. il est donc possible dans le programme C suivant ( test_ou.c ) de faire :

  • Le ou EXCLUSIF binaire : l’opérateur ’^’

    Cet opérateur sert a enlever certains bits a une variable. La règle est la suivante : Si les deux bits de même rang sont a 0, le resultat sera a 0. Si les deux bits de même rang sont différents, le resulta sera a 1. Si les deux bits de même rang sont a 1 le resultat sera a 0

    Pour résumer, seuls les bits de même rang qui sont différents, seront a 1, et tous les autres seront a 0.

    il est donc possible dans le programme C suivant ( test_ou_ex.c ) de faire :

  • Le complément a un unaire : l’opérateur ’ ’

    Cet opérateur sert a inverser chacun des bits de la variable.

    Chaque bit a 0 sera mis a 1

    Chaque bit a 1 sera mis a 0

    il est donc possible dans le programme C suivant ( test_compl1.c ) de faire :

  • Le décalage a droite : l’opérateur ’>>’

    On peut decaler a droite tous les bits d’une variable comme dans le programme C suivant ( test_decal_droite.c ) de faire :

Comme vous pouvez le constater :

  • Décaler d’une position a gauche équivaut à multiplier par deux
  • Décaler de deux positions a gauche équivaut à multiplier par quatre
  • Décaler de n positions a gauche équivaut à multiplier par ( 2 exposant n )
  • Décaler d’une position a droite équivaut à diviser par 2
  • Décaler de deux positions a droite équivaut à diviser par 4
  • Décaler de n positions a droite équivaut à diviser par ( 2 exposant n )
  • Les bits qui sortent du champ ( la taille de la variable ), sont irrémédiablement perdus.
  • Dans le cas du décalage a gauche, les nouveaux bits qui apparaissent a gauche sont initialisés avec des zéros.
  • Dans le cas du décalage a droite, les nouveaux bits qui apparaissent a droite sont initialisés avec des zéros.

Commentaires

3 Messages de forum

  1. 2- Les opérateurs du Language C

    Article clair et didactique
    Bravo

    | 6 septembre 2006, 11:36
  2. 2- Les opérateurs du Language C

    Merci pour cet excellent article très intéressant !

    par nathpic | 25 octobre 2011, 21:07
  3. 2- Les opérateurs du Language C

    Ah, le langage C ! Ca me rappelle beaucoup de - mauvais - souvenirs ! Aie :p

    par carbone14 | 16 novembre 2012, 06:33