Les opérateurs sont le fondement même du traitement des opérations mathématique et comparatif de n'importe quel langage, le Turbo C ne fait pas exception.
Les opérateurs de type entier
Opérateur | Description |
---|---|
== | Comparaison d'un égalité |
!= | Comparaison d'une différence |
> | Comparaison de plus grand que |
>= | Comparaison de plus grand ou égal que |
< | Comparaison de plus petit que |
<= | Comparaison de plus petit ou égal que |
+ | Effectue une addition |
- | Effectue une soustraction |
* | Effectue une multiplication |
/ | Effectue une division |
% | Effectue le reste d'une division (modulo) |
++ | Effectue une incrémentation |
-- | Effectue une décrémentation |
<< | Effectue un décalage à gauche |
>> | Effectue un décalage à droite |
! | Effectue une «négation binaire» |
& | Effectue un «Et binaire» |
| | Effectue un «Ou binaire» |
^ | Effectue un «Ou exclusif binaire» |
+= | Affectation de l'entier par une addition |
-= | Affectation de l'entier par une soustraction |
*= | Affectation de l'entier par une multiplication |
/= | Affectation de l'entier par une division |
<<= | Affectation de l'entier par un décalage à gauche |
>>= | Affectation de l'entier par un décalage à droite |
%= | Affectation de l'entier par un reste d'une division (modulo) |
&= | Affectation de l'entier par un «Et binaire» |
|= | Affectation de l'entier par un «Ou binaire» |
^= | Affectation de l'entier par un «Ou exclusif binaire» |
Les opérateurs de type réel (à virgule flottante)
Opérateur | Description |
---|---|
== | Comparaison d'un égalité |
!= | Comparaison d'une différence |
> | Comparaison de plus grand que |
>= | Comparaison de plus grand ou égal que |
< | Comparaison de plus petit que |
<= | Comparaison de plus petit ou égal que |
+ | Effectue une addition |
- | Effectue une soustraction |
* | Effectue une multiplication |
/ | Effectue une division |
% | Effectue le reste d'une division (modulo) |
++ | Effectue une incrémentation |
-- | Effectue une décrémentation |
+= | Affectation de la valeur réel par une addition |
-= | Affectation de la valeur réel par une soustraction |
*= | Affectation de la valeur réel par une multiplication |
/= | Affectation de la valeur réel par une division |
%= | Affectation de la valeur réel par un reste d'une division (modulo) |
Les opérateurs de type booléen
Opérateur | Description |
---|---|
== | Comparaison d'un égalité |
!= | Comparaison d'une différence |
! | Effectue une négation |
& | Effectue un «Et binaire» |
| | Effectue un «Ou binaire» |
^ | Effectue un «Ou exclusif binaire» |
&& | Effectue un «Et logique |
|| | Effectue un «Ou logique» |
Remarques
- Les opérateurs binaires, aussi appelé les opérateurs bit-à-bit, sont plus rapides d'exécution que les autres opérateurs et le nombre de cycles d'horloge qu'il consomme est vraiment très faible. Les opérateurs de multiplications, de division, de modulo sont extrêmement lent d'exécution, il serait donc préférable des utiliser le moins possible lorsque cela est possible.
- Les opérateurs logiques se basent essentiellement sur une table de vérité avec deux valeurs possibles VRAI ou FAUX. Le 0 devrait représenter le FAUX tandis que toutes les autres valeurs correspondent à VRAI (Table de vérité).
- Si vous avez un doute dans l'ordre de priorité du traitement de vos opérateurs, il peut être judicieux d'utiliser des parenthèses, mais vous n'enlèverez pas le risque de confusion pour les opérateurs d'affectation, d'incrémentation ou de décrémentation.
Exemple
Voici un exemple montrant une utilisation de ces opérandes :
- #include <string.h>
- #include <math.h>
-
- #define false 1 == 0
- #define true 1 == 1
-
- double round(double value) {
- return floor(value + 0.5);
- }
-
- int main()
- {
- int a = 1;
- long b = 2;
- unsigned char c = 3;
- int c_ = -3;
- char S[11] = "Gladir";
- strcat(S,".com");
-
- printf("false == 0 : ");
- if((false?1:0) == 0) puts("égale");
- else puts("pas égale");
- printf("1 + 1 : %i\n", 1 + 1);
- printf("a - b : %i\n", a - b);
- printf("a * b * 20 : %i\n", a * b * 20);
- printf("2 ^ 4 : %i\n", (int) round(pow(2,4)));
- puts(S);
- return 0;
- }
on obtiendra le résultat suivant :
false == 0 : égale1 + 1 : 2
a - b : -1
a * b * 20 : 40
2 ^ 4 : 16
Gladir.com
Voir également
Mathématique - Algèbre de Boole - Table de vérité
Dernière mise à jour : Samedi, le 25 juillet 2015