Vous êtes sur la page 1sur 4

Chapitre 3: TYPES DE BASE, OPÉRATEURS ET

EXPRESSIONS
3.1. Les types simples
3.1.1. Les types entiers
Le tableau suivant résume les caractéristiques des types numériques entiers de C :
• définition description domaine min domaine max nombre d'octets
• char caractère -128 127 1
• short entier court -32768 32767 2
• int entier standard -32768 32767 2
• long entier long -2147483648 2147483647 4
Si l’on ajoute le préfixe unsigned (sans signe) à l’une des variantes, alors on
manipule les entiers non signés:
unsigned char indique des valeurs entières entre 0 et 255
3.1.2 types réels
il existe trois types de réels
précision
• float simple ±1.1 10(-38) ±3.4 10(38) 4
• double double ±2.2 10(-308) ±1.7 10(308) 8
• long double très grande ±3.4 10(-4932) ±1.1 10(4932) 10
3.2 Déclaration des variables simples
Syntaxe de déclaration
• <type> <nomvar1>,<nomvar2>,…,<nomvarN>;
Exemple
int x,y;
int compteur;
float hauteur, largeur;
char touche;
3.3 constantes numériques
* constante entière: sous forme décimale
* constantes réelles: notation décimale ou en notation exponentielle
3.4 initialisation des variables
on peut initialiser les variables à la déclaration
exemple
o int max=333;
o char tab=‘\t’;Déclaration de constantes:
o const int min=1;
o Const char lettre=‘e’;
‘\a’ bip sonore
‘\b’ retour arrière
‘\n’ passage à la ligne suivante
‘\0’ caractère nul
‘\t’ tabulation horizontale
‘\ »’ guillemets
‘\’’ apostrophe
o Les chaînes de caractères
« exemple de programme c »
3.2.1. Initialisation des variables
Initialisation :
int MAX = 1023;
char TAB = '\t';
float X = 1.05e-4;
const : Pour indiquer que la valeur d'une variable ne change pas au cours d'un
programme, on peux utiliser l'attribut const :
const int MAX = 767;
const double e = 2.7182818;
const char NEWLINE = '\n';
3.3. Les opérateurs standards
Affectation
• <NomVariable> = <Expression>;
3.3.1. Les opérateurs connus
Opérateurs arithmétiques
+ addition
- soustraction
• multiplication
/ division (entière et réelle!)
% modulo (reste d'une div. entière)
5/2 2
5./2. 2.5
&& et logique (and)
|| ou logique (or)
! Négation logique (not)
S’appliquent à des expressions booléennes (0 si faux et valeur non nulle si vrai)
Exemple
32 && 45 1
!65.34 0
!!0 0
Opérateurs de comparaison
== égal à
!= différent de
<, <=, >, >= plus petit que, ...
!(32>3) 0
(5>1) 1
Opérations logiques
Les résultats des opérations de comparaison et des opérateurs logiques sont du type
int:
- la valeur 1 correspond à la valeur booléenne vrai
- la valeur 0 correspond à la valeur booléenne faux
Les opérateurs logiques considèrent toute valeur différente de zéro comme vrai et zéro
comme faux:

32 && 2.3 1

!65.34 0

0 !(32 > 12) 0


3.3.2. Les opérateurs particuliers de C
- Les opérateurs d'affectation
Opérateurs d'affectation
Pour la plupart des expressions de la forme:
• expr1 = (expr1) op (expr2)
il existe une formulation équivalente qui utilise un opérateur d'affectation:
• expr1 op= expr2
Opérateurs d'affectation
• += -= *= /= %=
-Opérateurs d'incrémentation et de décrémentation
• I++ ou ++I pour l'incrémentation
• I--ou --I pour la décrémentation
• X = I++ passe d'abord la valeur de I à X et incrémente après
• X = I-- passe d'abord la valeur de I à X et décrémente après
• X = ++I incrémente d'abord et passe la valeur incrémentée à X
• X = --I décrémente d'abord et passe la valeur décrémentée à X
conditionnel ? :
C'est un (le seul) opérateur ternaire.
L'expression
expression?exp1:exp2 vaut la valeur de exp1 si expression est vrai (entier, différent de
0), et exp2 si expression est faux.
Exemple : max=a>b?a:b
3.4. Les expressions et les instructions
Expressions
Les constantes et les variables sont des expressions.
Les expressions peuvent être combinées entre elles par des opérateurs et former ainsi
des expressions plus complexes.
Les expressions peuvent contenir des appels de fonctions et elles peuvent apparaître
comme paramètres dans des appels de fonctions.
Instructions
une instruction est Une expression suivie d'un point-virgule.
3.5. Les priorités des opérateurs
Classes de priorités
Priorité 1 (la plus forte): ()
Priorité 2: ! ++ -- 
Priorité 3: */%
Priorité 4: +-
Priorité 5: < <= > >=
Priorité 6: == !=
Priorité 7: &&
Priorité 8: ||
Priorité 9: ?: 
Priorité 10 (la plus faible): = += -= *= /= %= 
La priorité est décroissante de haut en bas dans le tableau.
La règle d’association s’applique pour tout les opérateurs d’un même niveau de
priorité ( pour une associativité de gauche à droite et pour une associativité de
droite à gauche).
Dans une expression, les parenthèses forcent la priorité.
3.6. Les conversions de type
Le type d’une expression peut être forcé, en utilisant l’opérateur CAST
• (<type>)<expression>
Exemple :
float c ; int a ; int b ;
c = (float) a/b ;

Vous aimerez peut-être aussi