chapitre 1: langage c - introduction et notions de base
TRANSCRIPT
![Page 1: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/1.jpg)
SMIA-S2
Chapitre 1: Langage C - introduction et
notions de base
Cours donné par:Pr. Nawal Alioua
Année universitaire:2019-2020
N. Alioua Chapitre 1: Langage C - introduction et notions de base 1
![Page 2: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/2.jpg)
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 2
![Page 3: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/3.jpg)
Passage de l'algorithmique à un langage de programmation
L'ordinateur est un matériel électronique, qui ne manipule que desimpulsions électriques:Le bit (0)2 correspond à l'impulsion 0 volts
Le bit (1)2 correspond à l'impulsion 5 volts (ou 3 volts pour quelquesmachines)
Il faut donc traduire nos algorithmes écrits en langage humain enlangage machine a�n que l'ordinateur puisse les exécuter.
⇒ Les langages de programmation permettent d'écrire des programmesinformatiques en utilisant une syntaxe proche du langage humain.Par la suite, certains outils liés au langage de programmation permettent detraduire ces programmes en langage compréhensible par la machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 3
![Page 4: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/4.jpg)
Passage de l'algorithmique à un langage de programmation
L'ordinateur est un matériel électronique, qui ne manipule que desimpulsions électriques:Le bit (0)2 correspond à l'impulsion 0 volts
Le bit (1)2 correspond à l'impulsion 5 volts (ou 3 volts pour quelquesmachines)
Il faut donc traduire nos algorithmes écrits en langage humain enlangage machine a�n que l'ordinateur puisse les exécuter.
⇒ Les langages de programmation permettent d'écrire des programmesinformatiques en utilisant une syntaxe proche du langage humain.Par la suite, certains outils liés au langage de programmation permettent detraduire ces programmes en langage compréhensible par la machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 3
![Page 5: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/5.jpg)
Passage de l'algorithmique à un langage de programmation
L'ordinateur est un matériel électronique, qui ne manipule que desimpulsions électriques:Le bit (0)2 correspond à l'impulsion 0 volts
Le bit (1)2 correspond à l'impulsion 5 volts (ou 3 volts pour quelquesmachines)
Il faut donc traduire nos algorithmes écrits en langage humain enlangage machine a�n que l'ordinateur puisse les exécuter.
⇒ Les langages de programmation permettent d'écrire des programmesinformatiques en utilisant une syntaxe proche du langage humain.Par la suite, certains outils liés au langage de programmation permettent detraduire ces programmes en langage compréhensible par la machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 3
![Page 6: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/6.jpg)
Passage de l'algorithmique à un langage de programmation
L'ordinateur est un matériel électronique, qui ne manipule que desimpulsions électriques:Le bit (0)2 correspond à l'impulsion 0 volts
Le bit (1)2 correspond à l'impulsion 5 volts (ou 3 volts pour quelquesmachines)
Il faut donc traduire nos algorithmes écrits en langage humain enlangage machine a�n que l'ordinateur puisse les exécuter.
⇒ Les langages de programmation permettent d'écrire des programmesinformatiques en utilisant une syntaxe proche du langage humain.Par la suite, certains outils liés au langage de programmation permettent detraduire ces programmes en langage compréhensible par la machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 3
![Page 7: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/7.jpg)
Passage de l'algorithmique à un langage de programmation
L'ordinateur est un matériel électronique, qui ne manipule que desimpulsions électriques:Le bit (0)2 correspond à l'impulsion 0 volts
Le bit (1)2 correspond à l'impulsion 5 volts (ou 3 volts pour quelquesmachines)
Il faut donc traduire nos algorithmes écrits en langage humain enlangage machine a�n que l'ordinateur puisse les exécuter.
⇒ Les langages de programmation permettent d'écrire des programmesinformatiques en utilisant une syntaxe proche du langage humain.Par la suite, certains outils liés au langage de programmation permettent detraduire ces programmes en langage compréhensible par la machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 3
![Page 8: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/8.jpg)
Passage de l'algorithmique à un langage de programmation
L'ordinateur est un matériel électronique, qui ne manipule que desimpulsions électriques:Le bit (0)2 correspond à l'impulsion 0 volts
Le bit (1)2 correspond à l'impulsion 5 volts (ou 3 volts pour quelquesmachines)
Il faut donc traduire nos algorithmes écrits en langage humain enlangage machine a�n que l'ordinateur puisse les exécuter.
⇒ Les langages de programmation permettent d'écrire des programmesinformatiques en utilisant une syntaxe proche du langage humain.Par la suite, certains outils liés au langage de programmation permettent detraduire ces programmes en langage compréhensible par la machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 3
![Page 9: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/9.jpg)
Introduction à la programmation en langage C
Plan
1 Introduction à la programmation en langage CQu'est ce que la programmationAlgorithmique-dé�nitionsLangage de programmation-Dé�nitionsPourquoi étudier le langage C?Historique du langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 4
![Page 10: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/10.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Plan
1 Introduction à la programmation en langage CQu'est ce que la programmationAlgorithmique-dé�nitionsLangage de programmation-Dé�nitionsPourquoi étudier le langage C?Historique du langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 5
![Page 11: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/11.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Langage machine Vs Langage de programmation
Langage machine: l'information est exprimée et manipulée sous formed'une suite de bits.
Problème: le langage machine est di�cile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuiteconverti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, quireprésentent les ordres données à la machine, de façon symbolique:↑ beaucoup plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez e�cace pour développer des applications complexes
Apparition des langages de programmation
N. Alioua Chapitre 1: Langage C - introduction et notions de base 6
![Page 12: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/12.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Langage machine Vs Langage de programmation
Langage machine: l'information est exprimée et manipulée sous formed'une suite de bits.
Problème: le langage machine est di�cile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuiteconverti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, quireprésentent les ordres données à la machine, de façon symbolique:↑ beaucoup plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez e�cace pour développer des applications complexes
Apparition des langages de programmation
N. Alioua Chapitre 1: Langage C - introduction et notions de base 6
![Page 13: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/13.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Langage machine Vs Langage de programmation
Langage machine: l'information est exprimée et manipulée sous formed'une suite de bits.
Problème: le langage machine est di�cile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuiteconverti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, quireprésentent les ordres données à la machine, de façon symbolique:↑ beaucoup plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez e�cace pour développer des applications complexes
Apparition des langages de programmation
N. Alioua Chapitre 1: Langage C - introduction et notions de base 6
![Page 14: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/14.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Langage machine Vs Langage de programmation
Langage machine: l'information est exprimée et manipulée sous formed'une suite de bits.
Problème: le langage machine est di�cile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuiteconverti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, quireprésentent les ordres données à la machine, de façon symbolique:↑ beaucoup plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez e�cace pour développer des applications complexes
Apparition des langages de programmation
N. Alioua Chapitre 1: Langage C - introduction et notions de base 6
![Page 15: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/15.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Langage machine Vs Langage de programmation
Langage machine: l'information est exprimée et manipulée sous formed'une suite de bits.
Problème: le langage machine est di�cile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuiteconverti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, quireprésentent les ordres données à la machine, de façon symbolique:↑ beaucoup plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez e�cace pour développer des applications complexes
Apparition des langages de programmation
N. Alioua Chapitre 1: Langage C - introduction et notions de base 6
![Page 16: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/16.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Langage machine Vs Langage de programmation
Langage machine: l'information est exprimée et manipulée sous formed'une suite de bits.
Problème: le langage machine est di�cile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuiteconverti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, quireprésentent les ordres données à la machine, de façon symbolique:↑ beaucoup plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez e�cace pour développer des applications complexes
Apparition des langages de programmation
N. Alioua Chapitre 1: Langage C - introduction et notions de base 6
![Page 17: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/17.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Langage machine Vs Langage de programmation
Langage machine: l'information est exprimée et manipulée sous formed'une suite de bits.
Problème: le langage machine est di�cile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuiteconverti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, quireprésentent les ordres données à la machine, de façon symbolique:↑ beaucoup plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez e�cace pour développer des applications complexes
Apparition des langages de programmation
N. Alioua Chapitre 1: Langage C - introduction et notions de base 6
![Page 18: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/18.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Langage machine Vs Langage de programmation
Langage machine: l'information est exprimée et manipulée sous formed'une suite de bits.
Problème: le langage machine est di�cile à comprendre par l'humain.
Idée: trouver un langage compréhensible par l'homme qui sera ensuiteconverti en langage machine.
Apparition de l'Assembleur: exprimer les instructions élémentaires, quireprésentent les ordres données à la machine, de façon symbolique:↑ beaucoup plus accessible que le langage machine
↓ dépend du type de la machine (n'est pas portable)
↓ pas assez e�cace pour développer des applications complexes
Apparition des langages de programmation
N. Alioua Chapitre 1: Langage C - introduction et notions de base 6
![Page 19: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/19.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Qu'est ce que la programmation?
Programmer c'est réaliser des programmes informatiques pour e�ectuerdes traitements sur les données et résoudre des problèmes.
Les programmes ordonnent à l'ordinateur d'e�ectuer des actions et destâches.
Dé�nition d'un programme: suite d'instructions qui permettent à unsystème informatique d'exécuter une tâche donnée.
En informatique, il existe de nombreux langages de plus ou moins hautniveau :- Plus un langage informatique est de haut niveau, plus il se rapproche dulangage humain.
- Plus un langage informatique est de bas niveau, plus il se rapproche dulangage machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 7
![Page 20: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/20.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Qu'est ce que la programmation?
Programmer c'est réaliser des programmes informatiques pour e�ectuerdes traitements sur les données et résoudre des problèmes.
Les programmes ordonnent à l'ordinateur d'e�ectuer des actions et destâches.
Dé�nition d'un programme: suite d'instructions qui permettent à unsystème informatique d'exécuter une tâche donnée.
En informatique, il existe de nombreux langages de plus ou moins hautniveau :- Plus un langage informatique est de haut niveau, plus il se rapproche dulangage humain.
- Plus un langage informatique est de bas niveau, plus il se rapproche dulangage machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 7
![Page 21: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/21.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Qu'est ce que la programmation?
Programmer c'est réaliser des programmes informatiques pour e�ectuerdes traitements sur les données et résoudre des problèmes.
Les programmes ordonnent à l'ordinateur d'e�ectuer des actions et destâches.
Dé�nition d'un programme: suite d'instructions qui permettent à unsystème informatique d'exécuter une tâche donnée.
En informatique, il existe de nombreux langages de plus ou moins hautniveau :- Plus un langage informatique est de haut niveau, plus il se rapproche dulangage humain.
- Plus un langage informatique est de bas niveau, plus il se rapproche dulangage machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 7
![Page 22: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/22.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Qu'est ce que la programmation?
Programmer c'est réaliser des programmes informatiques pour e�ectuerdes traitements sur les données et résoudre des problèmes.
Les programmes ordonnent à l'ordinateur d'e�ectuer des actions et destâches.
Dé�nition d'un programme: suite d'instructions qui permettent à unsystème informatique d'exécuter une tâche donnée.
En informatique, il existe de nombreux langages de plus ou moins hautniveau :- Plus un langage informatique est de haut niveau, plus il se rapproche dulangage humain.
- Plus un langage informatique est de bas niveau, plus il se rapproche dulangage machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 7
![Page 23: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/23.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Propriétés des langages haut niveau:
compréhensible car proche du langage humain (en anglais)
permet une plus grande portabilité (indépendant du matériel)
Manipulation de données et d'expressions complexes (réels, objets,a*b/c, ...)
Nécessité un traducteur (compilateur/interpréteur)
Exécution plus ou moins lente selon le traducteur utilisé
N. Alioua Chapitre 1: Langage C - introduction et notions de base 8
![Page 24: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/24.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Propriétés des langages haut niveau:
compréhensible car proche du langage humain (en anglais)
permet une plus grande portabilité (indépendant du matériel)
Manipulation de données et d'expressions complexes (réels, objets,a*b/c, ...)
Nécessité un traducteur (compilateur/interpréteur)
Exécution plus ou moins lente selon le traducteur utilisé
N. Alioua Chapitre 1: Langage C - introduction et notions de base 8
![Page 25: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/25.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Propriétés des langages haut niveau:
compréhensible car proche du langage humain (en anglais)
permet une plus grande portabilité (indépendant du matériel)
Manipulation de données et d'expressions complexes (réels, objets,a*b/c, ...)
Nécessité un traducteur (compilateur/interpréteur)
Exécution plus ou moins lente selon le traducteur utilisé
N. Alioua Chapitre 1: Langage C - introduction et notions de base 8
![Page 26: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/26.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Propriétés des langages haut niveau:
compréhensible car proche du langage humain (en anglais)
permet une plus grande portabilité (indépendant du matériel)
Manipulation de données et d'expressions complexes (réels, objets,a*b/c, ...)
Nécessité un traducteur (compilateur/interpréteur)
Exécution plus ou moins lente selon le traducteur utilisé
N. Alioua Chapitre 1: Langage C - introduction et notions de base 8
![Page 27: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/27.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Propriétés des langages haut niveau:
compréhensible car proche du langage humain (en anglais)
permet une plus grande portabilité (indépendant du matériel)
Manipulation de données et d'expressions complexes (réels, objets,a*b/c, ...)
Nécessité un traducteur (compilateur/interpréteur)
Exécution plus ou moins lente selon le traducteur utilisé
N. Alioua Chapitre 1: Langage C - introduction et notions de base 8
![Page 28: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/28.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Compilateur Vs Interpréteur
Compilateur: traduire le programme entier une fois pour toute↑ plus rapide à l'exécution
↑ sécurité du code source
↓ il faut recompiler à chaque modi�cation
Interpréteur: traduire au fur et à mesure les instructions duprogramme à chaque exécution↑ exécution instantanée appréciable pour les débutants
↓ exécution lente par rapport à la compilation
N. Alioua Chapitre 1: Langage C - introduction et notions de base 9
![Page 29: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/29.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Compilateur Vs Interpréteur
Compilateur: traduire le programme entier une fois pour toute↑ plus rapide à l'exécution
↑ sécurité du code source
↓ il faut recompiler à chaque modi�cation
Interpréteur: traduire au fur et à mesure les instructions duprogramme à chaque exécution↑ exécution instantanée appréciable pour les débutants
↓ exécution lente par rapport à la compilation
N. Alioua Chapitre 1: Langage C - introduction et notions de base 9
![Page 30: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/30.jpg)
Introduction à la programmation en langage C Qu'est ce que la programmation
Étapes de réalisation d'un programme
La réalisation de programmes passe par l'écriture d'algorithmes. C'estpour cette raison que nous avons étudié l'algorithmique pendant lesemestre 1
N. Alioua Chapitre 1: Langage C - introduction et notions de base 10
![Page 31: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/31.jpg)
Introduction à la programmation en langage C Algorithmique-dé�nitions
Plan
1 Introduction à la programmation en langage CQu'est ce que la programmationAlgorithmique-dé�nitionsLangage de programmation-Dé�nitionsPourquoi étudier le langage C?Historique du langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 11
![Page 32: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/32.jpg)
Introduction à la programmation en langage C Algorithmique-dé�nitions
Algorithmique
Le terme algorithme vient du nom du mathématicien arabeAl-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à e�ectuer etde leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de lasyntaxe.
Nous avons étudié les algorithmes en semestre 1 en adoptant lareprésentation en peudo-code:- représentation textuelle avec une série de conventions ressemblant à unlangage de programmation (sans les problèmes de syntaxe)
- plus pratique pour écrire un algorithme
- représentation largement utilisée
N. Alioua Chapitre 1: Langage C - introduction et notions de base 12
![Page 33: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/33.jpg)
Introduction à la programmation en langage C Algorithmique-dé�nitions
Algorithmique
Le terme algorithme vient du nom du mathématicien arabeAl-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à e�ectuer etde leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de lasyntaxe.
Nous avons étudié les algorithmes en semestre 1 en adoptant lareprésentation en peudo-code:- représentation textuelle avec une série de conventions ressemblant à unlangage de programmation (sans les problèmes de syntaxe)
- plus pratique pour écrire un algorithme
- représentation largement utilisée
N. Alioua Chapitre 1: Langage C - introduction et notions de base 12
![Page 34: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/34.jpg)
Introduction à la programmation en langage C Algorithmique-dé�nitions
Algorithmique
Le terme algorithme vient du nom du mathématicien arabeAl-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à e�ectuer etde leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de lasyntaxe.
Nous avons étudié les algorithmes en semestre 1 en adoptant lareprésentation en peudo-code:- représentation textuelle avec une série de conventions ressemblant à unlangage de programmation (sans les problèmes de syntaxe)
- plus pratique pour écrire un algorithme
- représentation largement utilisée
N. Alioua Chapitre 1: Langage C - introduction et notions de base 12
![Page 35: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/35.jpg)
Introduction à la programmation en langage C Algorithmique-dé�nitions
Algorithmique
Le terme algorithme vient du nom du mathématicien arabeAl-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à e�ectuer etde leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de lasyntaxe.
Nous avons étudié les algorithmes en semestre 1 en adoptant lareprésentation en peudo-code:- représentation textuelle avec une série de conventions ressemblant à unlangage de programmation (sans les problèmes de syntaxe)
- plus pratique pour écrire un algorithme
- représentation largement utilisée
N. Alioua Chapitre 1: Langage C - introduction et notions de base 12
![Page 36: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/36.jpg)
Introduction à la programmation en langage C Algorithmique-dé�nitions
Algorithmique
Le terme algorithme vient du nom du mathématicien arabeAl-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à e�ectuer etde leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de lasyntaxe.
Nous avons étudié les algorithmes en semestre 1 en adoptant lareprésentation en peudo-code:- représentation textuelle avec une série de conventions ressemblant à unlangage de programmation (sans les problèmes de syntaxe)
- plus pratique pour écrire un algorithme
- représentation largement utilisée
N. Alioua Chapitre 1: Langage C - introduction et notions de base 12
![Page 37: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/37.jpg)
Introduction à la programmation en langage C Algorithmique-dé�nitions
Algorithmique
Le terme algorithme vient du nom du mathématicien arabeAl-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à e�ectuer etde leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de lasyntaxe.
Nous avons étudié les algorithmes en semestre 1 en adoptant lareprésentation en peudo-code:- représentation textuelle avec une série de conventions ressemblant à unlangage de programmation (sans les problèmes de syntaxe)
- plus pratique pour écrire un algorithme
- représentation largement utilisée
N. Alioua Chapitre 1: Langage C - introduction et notions de base 12
![Page 38: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/38.jpg)
Introduction à la programmation en langage C Algorithmique-dé�nitions
Algorithmique
Le terme algorithme vient du nom du mathématicien arabeAl-Khawarizmi (820 après J.C.)
Algorithme: description complète et détaillée des actions à e�ectuer etde leur séquencement pour arriver à un résultat donné
Intérêt: séparation analyse/codage pour ne pas se préoccuper de lasyntaxe.
Nous avons étudié les algorithmes en semestre 1 en adoptant lareprésentation en peudo-code:- représentation textuelle avec une série de conventions ressemblant à unlangage de programmation (sans les problèmes de syntaxe)
- plus pratique pour écrire un algorithme
- représentation largement utilisée
N. Alioua Chapitre 1: Langage C - introduction et notions de base 12
![Page 39: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/39.jpg)
Introduction à la programmation en langage C Langage de programmation-Dé�nitions
Plan
1 Introduction à la programmation en langage CQu'est ce que la programmationAlgorithmique-dé�nitionsLangage de programmation-Dé�nitionsPourquoi étudier le langage C?Historique du langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 13
![Page 40: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/40.jpg)
Introduction à la programmation en langage C Langage de programmation-Dé�nitions
Langage de programmation- Dé�nitions
Langage de programmation: notation conventionnelle permettantde formuler des algorithmes et créer des programmes informatiques quiles appliquent.
Comme pour un langage naturel, un langage de programmation est faitd'un alphabet, un vocabulaire, des règles grammaticales,sémantiques et syntaxiques.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 14
![Page 41: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/41.jpg)
Introduction à la programmation en langage C Langage de programmation-Dé�nitions
Langage de programmation- Généralités
- Alphabet: basé sur les normes courantes comme la norme ASCII, quicomporte les lettres de A à Z sans accent, des chi�res et des symboles,ou bien la norme Unicode pour la plupart des langages modernes.
- Vocabulaire: ensemble des instructions construites à partir dessymboles de l'alphabet.
- Sémantique: dé�nit le sens de chacune des phrases qui peuvent êtreconstruites dans le langage, en particulier quels seront les e�ets de laphrase lors de l'exécution du programme.
- Syntaxe: ensemble des règles qui dé�nissent la manière d'écrire ou dedisposer les éléments d'un langage pour obtenir des programmes valideset compréhensibles par la machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 15
![Page 42: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/42.jpg)
Introduction à la programmation en langage C Langage de programmation-Dé�nitions
Langage de programmation- Généralités
- Alphabet: basé sur les normes courantes comme la norme ASCII, quicomporte les lettres de A à Z sans accent, des chi�res et des symboles,ou bien la norme Unicode pour la plupart des langages modernes.
- Vocabulaire: ensemble des instructions construites à partir dessymboles de l'alphabet.
- Sémantique: dé�nit le sens de chacune des phrases qui peuvent êtreconstruites dans le langage, en particulier quels seront les e�ets de laphrase lors de l'exécution du programme.
- Syntaxe: ensemble des règles qui dé�nissent la manière d'écrire ou dedisposer les éléments d'un langage pour obtenir des programmes valideset compréhensibles par la machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 15
![Page 43: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/43.jpg)
Introduction à la programmation en langage C Langage de programmation-Dé�nitions
Langage de programmation- Généralités
- Alphabet: basé sur les normes courantes comme la norme ASCII, quicomporte les lettres de A à Z sans accent, des chi�res et des symboles,ou bien la norme Unicode pour la plupart des langages modernes.
- Vocabulaire: ensemble des instructions construites à partir dessymboles de l'alphabet.
- Sémantique: dé�nit le sens de chacune des phrases qui peuvent êtreconstruites dans le langage, en particulier quels seront les e�ets de laphrase lors de l'exécution du programme.
- Syntaxe: ensemble des règles qui dé�nissent la manière d'écrire ou dedisposer les éléments d'un langage pour obtenir des programmes valideset compréhensibles par la machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 15
![Page 44: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/44.jpg)
Introduction à la programmation en langage C Langage de programmation-Dé�nitions
Langage de programmation- Généralités
- Alphabet: basé sur les normes courantes comme la norme ASCII, quicomporte les lettres de A à Z sans accent, des chi�res et des symboles,ou bien la norme Unicode pour la plupart des langages modernes.
- Vocabulaire: ensemble des instructions construites à partir dessymboles de l'alphabet.
- Sémantique: dé�nit le sens de chacune des phrases qui peuvent êtreconstruites dans le langage, en particulier quels seront les e�ets de laphrase lors de l'exécution du programme.
- Syntaxe: ensemble des règles qui dé�nissent la manière d'écrire ou dedisposer les éléments d'un langage pour obtenir des programmes valideset compréhensibles par la machine.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 15
![Page 45: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/45.jpg)
Introduction à la programmation en langage C Langage de programmation-Dé�nitions
Quel langage de programmation choisir?
Facilité d'apprentissage et d'utilisation pour le programmeur,
Rapidité d'exécution des programmes et stabilité (absence de défaut,appelé bugs en informatiques),
Durabilité du langage,
Disponibilité de programmeurs experts du langage,
Possibilité de structuration du programme,
Possibilité d'intégrer des programmes écrits dans d'autres langages,
Portabilité du langage sur di�érentes plateformes,
Existence d'une norme internationale concernant la dé�nition dulangage,
N. Alioua Chapitre 1: Langage C - introduction et notions de base 16
![Page 46: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/46.jpg)
Introduction à la programmation en langage C Langage de programmation-Dé�nitions
Exemples de langages de programmation
C;
C++;
Java ;
PHP ;
JavaScript ;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 17
![Page 47: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/47.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Plan
1 Introduction à la programmation en langage CQu'est ce que la programmationAlgorithmique-dé�nitionsLangage de programmation-Dé�nitionsPourquoi étudier le langage C?Historique du langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 18
![Page 48: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/48.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Pourquoi étudier le langage C?
Il existe plusieurs langages de programmation et on peut se demanderpourquoi on étudie le langage C. Ces raisons peuvent motiver ce choix:Sa popularité:il possède une communauté très importante et de nombreux tutoriels etdocumentations.
il existe plusieurs programmes et bibliothèques développés en/et pour le C.
Sa rapidité :connu pour être très rapide, il est préféré pour tout programme où la vitessed'exécution est importante.
Sa légèreté :étant léger, il est utilisé pour les programmes embarqués où la mémoiredisponible est faible.
Sa portabilité :un programme développé en C marche (théoriquement) sur n'importe quelleplateforme.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 19
![Page 49: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/49.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Pourquoi étudier le langage C?
Il existe plusieurs langages de programmation et on peut se demanderpourquoi on étudie le langage C. Ces raisons peuvent motiver ce choix:Sa popularité:il possède une communauté très importante et de nombreux tutoriels etdocumentations.
il existe plusieurs programmes et bibliothèques développés en/et pour le C.
Sa rapidité :connu pour être très rapide, il est préféré pour tout programme où la vitessed'exécution est importante.
Sa légèreté :étant léger, il est utilisé pour les programmes embarqués où la mémoiredisponible est faible.
Sa portabilité :un programme développé en C marche (théoriquement) sur n'importe quelleplateforme.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 19
![Page 50: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/50.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Pourquoi étudier le langage C?
Il existe plusieurs langages de programmation et on peut se demanderpourquoi on étudie le langage C. Ces raisons peuvent motiver ce choix:Sa popularité:il possède une communauté très importante et de nombreux tutoriels etdocumentations.
il existe plusieurs programmes et bibliothèques développés en/et pour le C.
Sa rapidité :connu pour être très rapide, il est préféré pour tout programme où la vitessed'exécution est importante.
Sa légèreté :étant léger, il est utilisé pour les programmes embarqués où la mémoiredisponible est faible.
Sa portabilité :un programme développé en C marche (théoriquement) sur n'importe quelleplateforme.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 19
![Page 51: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/51.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Pourquoi étudier le langage C?
Il existe plusieurs langages de programmation et on peut se demanderpourquoi on étudie le langage C. Ces raisons peuvent motiver ce choix:Sa popularité:il possède une communauté très importante et de nombreux tutoriels etdocumentations.
il existe plusieurs programmes et bibliothèques développés en/et pour le C.
Sa rapidité :connu pour être très rapide, il est préféré pour tout programme où la vitessed'exécution est importante.
Sa légèreté :étant léger, il est utilisé pour les programmes embarqués où la mémoiredisponible est faible.
Sa portabilité :un programme développé en C marche (théoriquement) sur n'importe quelleplateforme.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 19
![Page 52: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/52.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Pourquoi étudier le langage C?
Il existe plusieurs langages de programmation et on peut se demanderpourquoi on étudie le langage C. Ces raisons peuvent motiver ce choix:Sa popularité:il possède une communauté très importante et de nombreux tutoriels etdocumentations.
il existe plusieurs programmes et bibliothèques développés en/et pour le C.
Sa rapidité :connu pour être très rapide, il est préféré pour tout programme où la vitessed'exécution est importante.
Sa légèreté :étant léger, il est utilisé pour les programmes embarqués où la mémoiredisponible est faible.
Sa portabilité :un programme développé en C marche (théoriquement) sur n'importe quelleplateforme.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 19
![Page 53: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/53.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Pourquoi étudier le langage C?
Il existe plusieurs langages de programmation et on peut se demanderpourquoi on étudie le langage C. Ces raisons peuvent motiver ce choix:Sa popularité:il possède une communauté très importante et de nombreux tutoriels etdocumentations.
il existe plusieurs programmes et bibliothèques développés en/et pour le C.
Sa rapidité :connu pour être très rapide, il est préféré pour tout programme où la vitessed'exécution est importante.
Sa légèreté :étant léger, il est utilisé pour les programmes embarqués où la mémoiredisponible est faible.
Sa portabilité :un programme développé en C marche (théoriquement) sur n'importe quelleplateforme.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 19
![Page 54: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/54.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Pourquoi étudier le langage C?
Il existe plusieurs langages de programmation et on peut se demanderpourquoi on étudie le langage C. Ces raisons peuvent motiver ce choix:Sa popularité:il possède une communauté très importante et de nombreux tutoriels etdocumentations.
il existe plusieurs programmes et bibliothèques développés en/et pour le C.
Sa rapidité :connu pour être très rapide, il est préféré pour tout programme où la vitessed'exécution est importante.
Sa légèreté :étant léger, il est utilisé pour les programmes embarqués où la mémoiredisponible est faible.
Sa portabilité :un programme développé en C marche (théoriquement) sur n'importe quelleplateforme.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 19
![Page 55: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/55.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Pourquoi étudier le langage C?
Il existe plusieurs langages de programmation et on peut se demanderpourquoi on étudie le langage C. Ces raisons peuvent motiver ce choix:Sa popularité:il possède une communauté très importante et de nombreux tutoriels etdocumentations.
il existe plusieurs programmes et bibliothèques développés en/et pour le C.
Sa rapidité :connu pour être très rapide, il est préféré pour tout programme où la vitessed'exécution est importante.
Sa légèreté :étant léger, il est utilisé pour les programmes embarqués où la mémoiredisponible est faible.
Sa portabilité :un programme développé en C marche (théoriquement) sur n'importe quelleplateforme.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 19
![Page 56: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/56.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Inconvénients du C
tolérance aux comportements dangereux: C demande beaucoup derigueur et une bonne connaissance de ses bases pour ne pas tomberdans certains pièges.
nombre restreint de concepts: impose de devoir coder certainsmécanismes qui existent nativement dans d'autres langages
langage de bas niveau: ce point est considéré comme avantagesurtout pour les informaticiens, mais est aussi vu comme inconvénient.On programme en cherchant à comprendre ce que l'on fait. :programmer est un peu plus di�cile et plus long, mais on apprendbeaucoup sur sa machine et on a un grand contrôle sur ce que l'on fait.
Dans les langages de haut niveau, on programme en ignorant plusieursnotions primordiales. Programmer est souvent plus facile et plus rapide,mais on voit moins bien le fonctionnement de la machine et on peut tomberdans des erreurs très di�ciles à détecter et à corriger.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 20
![Page 57: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/57.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Inconvénients du C
tolérance aux comportements dangereux: C demande beaucoup derigueur et une bonne connaissance de ses bases pour ne pas tomberdans certains pièges.
nombre restreint de concepts: impose de devoir coder certainsmécanismes qui existent nativement dans d'autres langages
langage de bas niveau: ce point est considéré comme avantagesurtout pour les informaticiens, mais est aussi vu comme inconvénient.On programme en cherchant à comprendre ce que l'on fait. :programmer est un peu plus di�cile et plus long, mais on apprendbeaucoup sur sa machine et on a un grand contrôle sur ce que l'on fait.
Dans les langages de haut niveau, on programme en ignorant plusieursnotions primordiales. Programmer est souvent plus facile et plus rapide,mais on voit moins bien le fonctionnement de la machine et on peut tomberdans des erreurs très di�ciles à détecter et à corriger.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 20
![Page 58: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/58.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Inconvénients du C
tolérance aux comportements dangereux: C demande beaucoup derigueur et une bonne connaissance de ses bases pour ne pas tomberdans certains pièges.
nombre restreint de concepts: impose de devoir coder certainsmécanismes qui existent nativement dans d'autres langages
langage de bas niveau: ce point est considéré comme avantagesurtout pour les informaticiens, mais est aussi vu comme inconvénient.On programme en cherchant à comprendre ce que l'on fait. :programmer est un peu plus di�cile et plus long, mais on apprendbeaucoup sur sa machine et on a un grand contrôle sur ce que l'on fait.
Dans les langages de haut niveau, on programme en ignorant plusieursnotions primordiales. Programmer est souvent plus facile et plus rapide,mais on voit moins bien le fonctionnement de la machine et on peut tomberdans des erreurs très di�ciles à détecter et à corriger.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 20
![Page 59: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/59.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Inconvénients du C
tolérance aux comportements dangereux: C demande beaucoup derigueur et une bonne connaissance de ses bases pour ne pas tomberdans certains pièges.
nombre restreint de concepts: impose de devoir coder certainsmécanismes qui existent nativement dans d'autres langages
langage de bas niveau: ce point est considéré comme avantagesurtout pour les informaticiens, mais est aussi vu comme inconvénient.On programme en cherchant à comprendre ce que l'on fait. :programmer est un peu plus di�cile et plus long, mais on apprendbeaucoup sur sa machine et on a un grand contrôle sur ce que l'on fait.
Dans les langages de haut niveau, on programme en ignorant plusieursnotions primordiales. Programmer est souvent plus facile et plus rapide,mais on voit moins bien le fonctionnement de la machine et on peut tomberdans des erreurs très di�ciles à détecter et à corriger.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 20
![Page 60: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/60.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Inconvénients du C
tolérance aux comportements dangereux: C demande beaucoup derigueur et une bonne connaissance de ses bases pour ne pas tomberdans certains pièges.
nombre restreint de concepts: impose de devoir coder certainsmécanismes qui existent nativement dans d'autres langages
langage de bas niveau: ce point est considéré comme avantagesurtout pour les informaticiens, mais est aussi vu comme inconvénient.On programme en cherchant à comprendre ce que l'on fait. :programmer est un peu plus di�cile et plus long, mais on apprendbeaucoup sur sa machine et on a un grand contrôle sur ce que l'on fait.
Dans les langages de haut niveau, on programme en ignorant plusieursnotions primordiales. Programmer est souvent plus facile et plus rapide,mais on voit moins bien le fonctionnement de la machine et on peut tomberdans des erreurs très di�ciles à détecter et à corriger.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 20
![Page 61: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/61.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Le langage C++, ce n'est pas le langage C
Le C++ est un langage de programmation qui a été inventé dans lesannées 1980 par Bjarne Stroustrup, un collègue de Dennis Ritchie(inventeur du C), qui souhaitait rajouter des éléments au C.
Bien qu'à sa création, le C++ ressemblait beaucoup au C, ces deuxlangages sont aujourd'hui très di�érents:On ne programme pas et on ne ré�échit pas de la même façon en C qu'enC++. Le C++ est un langage orienté objet, ce qui fait de lui un langage deplus haut niveau que le C, mais il est un peu plus lent.
On ne peut pas dire qu'un des langages est meilleur que l'autre, maischacun est adapté à un type de programmes.
Contrairement à ce qu'on pense, il est possible d'apprendre le C++ sanspasser par le C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 21
![Page 62: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/62.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Le langage C++, ce n'est pas le langage C
Le C++ est un langage de programmation qui a été inventé dans lesannées 1980 par Bjarne Stroustrup, un collègue de Dennis Ritchie(inventeur du C), qui souhaitait rajouter des éléments au C.
Bien qu'à sa création, le C++ ressemblait beaucoup au C, ces deuxlangages sont aujourd'hui très di�érents:On ne programme pas et on ne ré�échit pas de la même façon en C qu'enC++. Le C++ est un langage orienté objet, ce qui fait de lui un langage deplus haut niveau que le C, mais il est un peu plus lent.
On ne peut pas dire qu'un des langages est meilleur que l'autre, maischacun est adapté à un type de programmes.
Contrairement à ce qu'on pense, il est possible d'apprendre le C++ sanspasser par le C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 21
![Page 63: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/63.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Le langage C++, ce n'est pas le langage C
Le C++ est un langage de programmation qui a été inventé dans lesannées 1980 par Bjarne Stroustrup, un collègue de Dennis Ritchie(inventeur du C), qui souhaitait rajouter des éléments au C.
Bien qu'à sa création, le C++ ressemblait beaucoup au C, ces deuxlangages sont aujourd'hui très di�érents:On ne programme pas et on ne ré�échit pas de la même façon en C qu'enC++. Le C++ est un langage orienté objet, ce qui fait de lui un langage deplus haut niveau que le C, mais il est un peu plus lent.
On ne peut pas dire qu'un des langages est meilleur que l'autre, maischacun est adapté à un type de programmes.
Contrairement à ce qu'on pense, il est possible d'apprendre le C++ sanspasser par le C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 21
![Page 64: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/64.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Le langage C++, ce n'est pas le langage C
Le C++ est un langage de programmation qui a été inventé dans lesannées 1980 par Bjarne Stroustrup, un collègue de Dennis Ritchie(inventeur du C), qui souhaitait rajouter des éléments au C.
Bien qu'à sa création, le C++ ressemblait beaucoup au C, ces deuxlangages sont aujourd'hui très di�érents:On ne programme pas et on ne ré�échit pas de la même façon en C qu'enC++. Le C++ est un langage orienté objet, ce qui fait de lui un langage deplus haut niveau que le C, mais il est un peu plus lent.
On ne peut pas dire qu'un des langages est meilleur que l'autre, maischacun est adapté à un type de programmes.
Contrairement à ce qu'on pense, il est possible d'apprendre le C++ sanspasser par le C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 21
![Page 65: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/65.jpg)
Introduction à la programmation en langage C Pourquoi étudier le langage C?
Le langage C++, ce n'est pas le langage C
Le C++ est un langage de programmation qui a été inventé dans lesannées 1980 par Bjarne Stroustrup, un collègue de Dennis Ritchie(inventeur du C), qui souhaitait rajouter des éléments au C.
Bien qu'à sa création, le C++ ressemblait beaucoup au C, ces deuxlangages sont aujourd'hui très di�érents:On ne programme pas et on ne ré�échit pas de la même façon en C qu'enC++. Le C++ est un langage orienté objet, ce qui fait de lui un langage deplus haut niveau que le C, mais il est un peu plus lent.
On ne peut pas dire qu'un des langages est meilleur que l'autre, maischacun est adapté à un type de programmes.
Contrairement à ce qu'on pense, il est possible d'apprendre le C++ sanspasser par le C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 21
![Page 66: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/66.jpg)
Introduction à la programmation en langage C Historique du langage C
Plan
1 Introduction à la programmation en langage CQu'est ce que la programmationAlgorithmique-dé�nitionsLangage de programmation-Dé�nitionsPourquoi étudier le langage C?Historique du langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 22
![Page 67: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/67.jpg)
Introduction à la programmation en langage C Historique du langage C
Création du langage
Le langage C a été créé en 1972 par Denis Ritchie avec un objectifrelativement limité : écrire un système d'exploitation (UNIX).
Les qualités opérationnelles de C (surtout sa rapidité et sa portabilité)ont motivé son utilisation par les programmeurs.
Une première dé�nition de C est apparue en 1978 avec l'ouvrage deKernighan et Ritchie: " The C programming language". Mais celangage a continué d'évoluer après à travers di�érents compilateurs, ledernier date de 2017.
Son succès international a contribué à sa normalisation, d'abord parl'ANSI (American National Standard Institute), puis par l'ISO(International Standards Organization), puis le CEN (Comité européende normalisation).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 23
![Page 68: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/68.jpg)
Introduction à la programmation en langage C Historique du langage C
Création du langage
Le langage C a été créé en 1972 par Denis Ritchie avec un objectifrelativement limité : écrire un système d'exploitation (UNIX).
Les qualités opérationnelles de C (surtout sa rapidité et sa portabilité)ont motivé son utilisation par les programmeurs.
Une première dé�nition de C est apparue en 1978 avec l'ouvrage deKernighan et Ritchie: " The C programming language". Mais celangage a continué d'évoluer après à travers di�érents compilateurs, ledernier date de 2017.
Son succès international a contribué à sa normalisation, d'abord parl'ANSI (American National Standard Institute), puis par l'ISO(International Standards Organization), puis le CEN (Comité européende normalisation).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 23
![Page 69: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/69.jpg)
Introduction à la programmation en langage C Historique du langage C
Création du langage
Le langage C a été créé en 1972 par Denis Ritchie avec un objectifrelativement limité : écrire un système d'exploitation (UNIX).
Les qualités opérationnelles de C (surtout sa rapidité et sa portabilité)ont motivé son utilisation par les programmeurs.
Une première dé�nition de C est apparue en 1978 avec l'ouvrage deKernighan et Ritchie: " The C programming language". Mais celangage a continué d'évoluer après à travers di�érents compilateurs, ledernier date de 2017.
Son succès international a contribué à sa normalisation, d'abord parl'ANSI (American National Standard Institute), puis par l'ISO(International Standards Organization), puis le CEN (Comité européende normalisation).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 23
![Page 70: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/70.jpg)
Introduction à la programmation en langage C Historique du langage C
Création du langage
Le langage C a été créé en 1972 par Denis Ritchie avec un objectifrelativement limité : écrire un système d'exploitation (UNIX).
Les qualités opérationnelles de C (surtout sa rapidité et sa portabilité)ont motivé son utilisation par les programmeurs.
Une première dé�nition de C est apparue en 1978 avec l'ouvrage deKernighan et Ritchie: " The C programming language". Mais celangage a continué d'évoluer après à travers di�érents compilateurs, ledernier date de 2017.
Son succès international a contribué à sa normalisation, d'abord parl'ANSI (American National Standard Institute), puis par l'ISO(International Standards Organization), puis le CEN (Comité européende normalisation).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 23
![Page 71: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/71.jpg)
Introduction à la programmation en langage C Historique du langage C
Les normes du langage C
La norme correspond aux règles du langage C qui ont été développéespar des informaticiens professionnels.
Bien entendu, la norme n'est pas parfaite et ne répond pas à toutes lesquestions. Cependant, elle reste la référence de tout programmeur.
La norme sert à o�cialiser les règles pour que chaque personnesouhaitant communiquer (programmeur) puisse être parfaitementcompris par chaque interprète (compilateur) qui va traduire à lamachine.
Il existe plusieurs versions de la norme du langage C : C89, C99, C11 etC17.
Chaque version corrige des erreurs et ajoute de nouvelles fonctionnalités.
Si on utilise une ancienne norme comme le C99 (la plus utilisée àprésent), on est capable d'exécuter nos programmes dans des versionsplus récentes, mais l'inverse n'est pas toujours vrai.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 24
![Page 72: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/72.jpg)
Introduction à la programmation en langage C Historique du langage C
Les normes du langage C
La norme correspond aux règles du langage C qui ont été développéespar des informaticiens professionnels.
Bien entendu, la norme n'est pas parfaite et ne répond pas à toutes lesquestions. Cependant, elle reste la référence de tout programmeur.
La norme sert à o�cialiser les règles pour que chaque personnesouhaitant communiquer (programmeur) puisse être parfaitementcompris par chaque interprète (compilateur) qui va traduire à lamachine.
Il existe plusieurs versions de la norme du langage C : C89, C99, C11 etC17.
Chaque version corrige des erreurs et ajoute de nouvelles fonctionnalités.
Si on utilise une ancienne norme comme le C99 (la plus utilisée àprésent), on est capable d'exécuter nos programmes dans des versionsplus récentes, mais l'inverse n'est pas toujours vrai.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 24
![Page 73: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/73.jpg)
Introduction à la programmation en langage C Historique du langage C
Les normes du langage C
La norme correspond aux règles du langage C qui ont été développéespar des informaticiens professionnels.
Bien entendu, la norme n'est pas parfaite et ne répond pas à toutes lesquestions. Cependant, elle reste la référence de tout programmeur.
La norme sert à o�cialiser les règles pour que chaque personnesouhaitant communiquer (programmeur) puisse être parfaitementcompris par chaque interprète (compilateur) qui va traduire à lamachine.
Il existe plusieurs versions de la norme du langage C : C89, C99, C11 etC17.
Chaque version corrige des erreurs et ajoute de nouvelles fonctionnalités.
Si on utilise une ancienne norme comme le C99 (la plus utilisée àprésent), on est capable d'exécuter nos programmes dans des versionsplus récentes, mais l'inverse n'est pas toujours vrai.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 24
![Page 74: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/74.jpg)
Introduction à la programmation en langage C Historique du langage C
Les normes du langage C
La norme correspond aux règles du langage C qui ont été développéespar des informaticiens professionnels.
Bien entendu, la norme n'est pas parfaite et ne répond pas à toutes lesquestions. Cependant, elle reste la référence de tout programmeur.
La norme sert à o�cialiser les règles pour que chaque personnesouhaitant communiquer (programmeur) puisse être parfaitementcompris par chaque interprète (compilateur) qui va traduire à lamachine.
Il existe plusieurs versions de la norme du langage C : C89, C99, C11 etC17.
Chaque version corrige des erreurs et ajoute de nouvelles fonctionnalités.
Si on utilise une ancienne norme comme le C99 (la plus utilisée àprésent), on est capable d'exécuter nos programmes dans des versionsplus récentes, mais l'inverse n'est pas toujours vrai.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 24
![Page 75: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/75.jpg)
Introduction à la programmation en langage C Historique du langage C
Les normes du langage C
La norme correspond aux règles du langage C qui ont été développéespar des informaticiens professionnels.
Bien entendu, la norme n'est pas parfaite et ne répond pas à toutes lesquestions. Cependant, elle reste la référence de tout programmeur.
La norme sert à o�cialiser les règles pour que chaque personnesouhaitant communiquer (programmeur) puisse être parfaitementcompris par chaque interprète (compilateur) qui va traduire à lamachine.
Il existe plusieurs versions de la norme du langage C : C89, C99, C11 etC17.
Chaque version corrige des erreurs et ajoute de nouvelles fonctionnalités.
Si on utilise une ancienne norme comme le C99 (la plus utilisée àprésent), on est capable d'exécuter nos programmes dans des versionsplus récentes, mais l'inverse n'est pas toujours vrai.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 24
![Page 76: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/76.jpg)
Introduction à la programmation en langage C Historique du langage C
Les normes du langage C
La norme correspond aux règles du langage C qui ont été développéespar des informaticiens professionnels.
Bien entendu, la norme n'est pas parfaite et ne répond pas à toutes lesquestions. Cependant, elle reste la référence de tout programmeur.
La norme sert à o�cialiser les règles pour que chaque personnesouhaitant communiquer (programmeur) puisse être parfaitementcompris par chaque interprète (compilateur) qui va traduire à lamachine.
Il existe plusieurs versions de la norme du langage C : C89, C99, C11 etC17.
Chaque version corrige des erreurs et ajoute de nouvelles fonctionnalités.
Si on utilise une ancienne norme comme le C99 (la plus utilisée àprésent), on est capable d'exécuter nos programmes dans des versionsplus récentes, mais l'inverse n'est pas toujours vrai.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 24
![Page 77: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/77.jpg)
Éléments généraux d'un programme en langage C
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage CExemple de programmeDivers éléments du code sourceÉtapes de création d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 25
![Page 78: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/78.jpg)
Éléments généraux d'un programme en langage C Exemple de programme
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage CExemple de programmeDivers éléments du code sourceÉtapes de création d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 26
![Page 79: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/79.jpg)
Éléments généraux d'un programme en langage C Exemple de programme
Exemple de programme
N. Alioua Chapitre 1: Langage C - introduction et notions de base 27
![Page 80: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/80.jpg)
Éléments généraux d'un programme en langage C Exemple de programme
Exemple de programme
N. Alioua Chapitre 1: Langage C - introduction et notions de base 27
![Page 81: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/81.jpg)
Éléments généraux d'un programme en langage C Exemple de programme
Exemple de programme
N. Alioua Chapitre 1: Langage C - introduction et notions de base 27
![Page 82: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/82.jpg)
Éléments généraux d'un programme en langage C Exemple de programme
Exemple de programme
N. Alioua Chapitre 1: Langage C - introduction et notions de base 27
![Page 83: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/83.jpg)
Éléments généraux d'un programme en langage C Exemple de programme
Exemple de programme
N. Alioua Chapitre 1: Langage C - introduction et notions de base 27
![Page 84: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/84.jpg)
Éléments généraux d'un programme en langage C Exemple de programme
Exemple de programme
N. Alioua Chapitre 1: Langage C - introduction et notions de base 27
![Page 85: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/85.jpg)
Éléments généraux d'un programme en langage C Exemple de programme
Exemple de programme
N. Alioua Chapitre 1: Langage C - introduction et notions de base 27
![Page 86: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/86.jpg)
Éléments généraux d'un programme en langage C Exemple de programme
Exemple de programme
N. Alioua Chapitre 1: Langage C - introduction et notions de base 28
![Page 87: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/87.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage CExemple de programmeDivers éléments du code sourceÉtapes de création d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 29
![Page 88: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/88.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Éléments du code source
#include<stdio.h> informe le compilateur d'inclure le �chier stdio.hqui contient les fonctions d'entrées-sorties (i pour input et o pouroutput), dont la fonction printf.
La fonction main est la fonction principale des programmes en C: Ellese trouve obligatoirement dans tous les programmes. Elle possède deuxen-têtes possibles (qu'on étudiera dans le chapitre dédié aux fonctions)selon la norme:int main(void) {/* programme C */ return 0; }
int main(liste_arguments) {/* programme C */ return 0; }
return 0; signi�e par convention que le programme s'est terminé sans erreur.On peut ne pas mettre return 0; dans la fonction main.
L'appel de printf avec l'argument "Bonjour \n" permet d'a�cher surl'écran: Bonjour et \n ordonne le passage à la ligne suivante
En C, toute instruction simple est terminée par un point-virgule ;
Un commentaire en C est compris entre // et la �n de la ligne ou bienentre /* et */N. Alioua Chapitre 1: Langage C - introduction et notions de base 30
![Page 89: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/89.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Éléments du code source
#include<stdio.h> informe le compilateur d'inclure le �chier stdio.hqui contient les fonctions d'entrées-sorties (i pour input et o pouroutput), dont la fonction printf.
La fonction main est la fonction principale des programmes en C: Ellese trouve obligatoirement dans tous les programmes. Elle possède deuxen-têtes possibles (qu'on étudiera dans le chapitre dédié aux fonctions)selon la norme:int main(void) {/* programme C */ return 0; }
int main(liste_arguments) {/* programme C */ return 0; }
return 0; signi�e par convention que le programme s'est terminé sans erreur.On peut ne pas mettre return 0; dans la fonction main.
L'appel de printf avec l'argument "Bonjour \n" permet d'a�cher surl'écran: Bonjour et \n ordonne le passage à la ligne suivante
En C, toute instruction simple est terminée par un point-virgule ;
Un commentaire en C est compris entre // et la �n de la ligne ou bienentre /* et */N. Alioua Chapitre 1: Langage C - introduction et notions de base 30
![Page 90: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/90.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Éléments du code source
#include<stdio.h> informe le compilateur d'inclure le �chier stdio.hqui contient les fonctions d'entrées-sorties (i pour input et o pouroutput), dont la fonction printf.
La fonction main est la fonction principale des programmes en C: Ellese trouve obligatoirement dans tous les programmes. Elle possède deuxen-têtes possibles (qu'on étudiera dans le chapitre dédié aux fonctions)selon la norme:int main(void) {/* programme C */ return 0; }
int main(liste_arguments) {/* programme C */ return 0; }
return 0; signi�e par convention que le programme s'est terminé sans erreur.On peut ne pas mettre return 0; dans la fonction main.
L'appel de printf avec l'argument "Bonjour \n" permet d'a�cher surl'écran: Bonjour et \n ordonne le passage à la ligne suivante
En C, toute instruction simple est terminée par un point-virgule ;
Un commentaire en C est compris entre // et la �n de la ligne ou bienentre /* et */N. Alioua Chapitre 1: Langage C - introduction et notions de base 30
![Page 91: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/91.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Éléments du code source
#include<stdio.h> informe le compilateur d'inclure le �chier stdio.hqui contient les fonctions d'entrées-sorties (i pour input et o pouroutput), dont la fonction printf.
La fonction main est la fonction principale des programmes en C: Ellese trouve obligatoirement dans tous les programmes. Elle possède deuxen-têtes possibles (qu'on étudiera dans le chapitre dédié aux fonctions)selon la norme:int main(void) {/* programme C */ return 0; }
int main(liste_arguments) {/* programme C */ return 0; }
return 0; signi�e par convention que le programme s'est terminé sans erreur.On peut ne pas mettre return 0; dans la fonction main.
L'appel de printf avec l'argument "Bonjour \n" permet d'a�cher surl'écran: Bonjour et \n ordonne le passage à la ligne suivante
En C, toute instruction simple est terminée par un point-virgule ;
Un commentaire en C est compris entre // et la �n de la ligne ou bienentre /* et */N. Alioua Chapitre 1: Langage C - introduction et notions de base 30
![Page 92: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/92.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Éléments du code source
#include<stdio.h> informe le compilateur d'inclure le �chier stdio.hqui contient les fonctions d'entrées-sorties (i pour input et o pouroutput), dont la fonction printf.
La fonction main est la fonction principale des programmes en C: Ellese trouve obligatoirement dans tous les programmes. Elle possède deuxen-têtes possibles (qu'on étudiera dans le chapitre dédié aux fonctions)selon la norme:int main(void) {/* programme C */ return 0; }
int main(liste_arguments) {/* programme C */ return 0; }
return 0; signi�e par convention que le programme s'est terminé sans erreur.On peut ne pas mettre return 0; dans la fonction main.
L'appel de printf avec l'argument "Bonjour \n" permet d'a�cher surl'écran: Bonjour et \n ordonne le passage à la ligne suivante
En C, toute instruction simple est terminée par un point-virgule ;
Un commentaire en C est compris entre // et la �n de la ligne ou bienentre /* et */N. Alioua Chapitre 1: Langage C - introduction et notions de base 30
![Page 93: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/93.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Éléments du code source
#include<stdio.h> informe le compilateur d'inclure le �chier stdio.hqui contient les fonctions d'entrées-sorties (i pour input et o pouroutput), dont la fonction printf.
La fonction main est la fonction principale des programmes en C: Ellese trouve obligatoirement dans tous les programmes. Elle possède deuxen-têtes possibles (qu'on étudiera dans le chapitre dédié aux fonctions)selon la norme:int main(void) {/* programme C */ return 0; }
int main(liste_arguments) {/* programme C */ return 0; }
return 0; signi�e par convention que le programme s'est terminé sans erreur.On peut ne pas mettre return 0; dans la fonction main.
L'appel de printf avec l'argument "Bonjour \n" permet d'a�cher surl'écran: Bonjour et \n ordonne le passage à la ligne suivante
En C, toute instruction simple est terminée par un point-virgule ;
Un commentaire en C est compris entre // et la �n de la ligne ou bienentre /* et */N. Alioua Chapitre 1: Langage C - introduction et notions de base 30
![Page 94: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/94.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Éléments du code source
#include<stdio.h> informe le compilateur d'inclure le �chier stdio.hqui contient les fonctions d'entrées-sorties (i pour input et o pouroutput), dont la fonction printf.
La fonction main est la fonction principale des programmes en C: Ellese trouve obligatoirement dans tous les programmes. Elle possède deuxen-têtes possibles (qu'on étudiera dans le chapitre dédié aux fonctions)selon la norme:int main(void) {/* programme C */ return 0; }
int main(liste_arguments) {/* programme C */ return 0; }
return 0; signi�e par convention que le programme s'est terminé sans erreur.On peut ne pas mettre return 0; dans la fonction main.
L'appel de printf avec l'argument "Bonjour \n" permet d'a�cher surl'écran: Bonjour et \n ordonne le passage à la ligne suivante
En C, toute instruction simple est terminée par un point-virgule ;
Un commentaire en C est compris entre // et la �n de la ligne ou bienentre /* et */N. Alioua Chapitre 1: Langage C - introduction et notions de base 30
![Page 95: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/95.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Éléments du code source
#include<stdio.h> informe le compilateur d'inclure le �chier stdio.hqui contient les fonctions d'entrées-sorties (i pour input et o pouroutput), dont la fonction printf.
La fonction main est la fonction principale des programmes en C: Ellese trouve obligatoirement dans tous les programmes. Elle possède deuxen-têtes possibles (qu'on étudiera dans le chapitre dédié aux fonctions)selon la norme:int main(void) {/* programme C */ return 0; }
int main(liste_arguments) {/* programme C */ return 0; }
return 0; signi�e par convention que le programme s'est terminé sans erreur.On peut ne pas mettre return 0; dans la fonction main.
L'appel de printf avec l'argument "Bonjour \n" permet d'a�cher surl'écran: Bonjour et \n ordonne le passage à la ligne suivante
En C, toute instruction simple est terminée par un point-virgule ;
Un commentaire en C est compris entre // et la �n de la ligne ou bienentre /* et */N. Alioua Chapitre 1: Langage C - introduction et notions de base 30
![Page 96: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/96.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les séparateurs
Dans notre langue écrite, les di�érents mots sont séparés par un espace,un signe de ponctuation ou une �n de ligne.
De même en langage C, Il existe certains séparateurs pour délimiter lesexpressions:Évidement, deux identi�cateurs successives entre lesquels la syntaxen'impose aucun signe particulier (, ou = ou ; ou * ou ( ) ou [ ] ou { })doivent impérativement être séparés soit par un espace, soit par une �nde ligne.
Dès que la syntaxe impose un séparateur quelconque, il n'est alors pasobligatoire de mettre des espaces supplémentaires, bien qu'en pratiquecela améliore la lisibilité du programme.
En langage C, chaque instruction se termine par un point-virgule ;
Exemple:On doit écrire int x,y; et non pas intx,y;
On peut écrire indi�éremment int n,compte,total,p; ou pour plus de lisibilitéint n, compte, total, p ;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 31
![Page 97: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/97.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les séparateurs
Dans notre langue écrite, les di�érents mots sont séparés par un espace,un signe de ponctuation ou une �n de ligne.
De même en langage C, Il existe certains séparateurs pour délimiter lesexpressions:Évidement, deux identi�cateurs successives entre lesquels la syntaxen'impose aucun signe particulier (, ou = ou ; ou * ou ( ) ou [ ] ou { })doivent impérativement être séparés soit par un espace, soit par une �nde ligne.
Dès que la syntaxe impose un séparateur quelconque, il n'est alors pasobligatoire de mettre des espaces supplémentaires, bien qu'en pratiquecela améliore la lisibilité du programme.
En langage C, chaque instruction se termine par un point-virgule ;
Exemple:On doit écrire int x,y; et non pas intx,y;
On peut écrire indi�éremment int n,compte,total,p; ou pour plus de lisibilitéint n, compte, total, p ;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 31
![Page 98: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/98.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les séparateurs
Dans notre langue écrite, les di�érents mots sont séparés par un espace,un signe de ponctuation ou une �n de ligne.
De même en langage C, Il existe certains séparateurs pour délimiter lesexpressions:Évidement, deux identi�cateurs successives entre lesquels la syntaxen'impose aucun signe particulier (, ou = ou ; ou * ou ( ) ou [ ] ou { })doivent impérativement être séparés soit par un espace, soit par une �nde ligne.
Dès que la syntaxe impose un séparateur quelconque, il n'est alors pasobligatoire de mettre des espaces supplémentaires, bien qu'en pratiquecela améliore la lisibilité du programme.
En langage C, chaque instruction se termine par un point-virgule ;
Exemple:On doit écrire int x,y; et non pas intx,y;
On peut écrire indi�éremment int n,compte,total,p; ou pour plus de lisibilitéint n, compte, total, p ;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 31
![Page 99: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/99.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les séparateurs
Dans notre langue écrite, les di�érents mots sont séparés par un espace,un signe de ponctuation ou une �n de ligne.
De même en langage C, Il existe certains séparateurs pour délimiter lesexpressions:Évidement, deux identi�cateurs successives entre lesquels la syntaxen'impose aucun signe particulier (, ou = ou ; ou * ou ( ) ou [ ] ou { })doivent impérativement être séparés soit par un espace, soit par une �nde ligne.
Dès que la syntaxe impose un séparateur quelconque, il n'est alors pasobligatoire de mettre des espaces supplémentaires, bien qu'en pratiquecela améliore la lisibilité du programme.
En langage C, chaque instruction se termine par un point-virgule ;
Exemple:On doit écrire int x,y; et non pas intx,y;
On peut écrire indi�éremment int n,compte,total,p; ou pour plus de lisibilitéint n, compte, total, p ;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 31
![Page 100: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/100.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les séparateurs
Dans notre langue écrite, les di�érents mots sont séparés par un espace,un signe de ponctuation ou une �n de ligne.
De même en langage C, Il existe certains séparateurs pour délimiter lesexpressions:Évidement, deux identi�cateurs successives entre lesquels la syntaxen'impose aucun signe particulier (, ou = ou ; ou * ou ( ) ou [ ] ou { })doivent impérativement être séparés soit par un espace, soit par une �nde ligne.
Dès que la syntaxe impose un séparateur quelconque, il n'est alors pasobligatoire de mettre des espaces supplémentaires, bien qu'en pratiquecela améliore la lisibilité du programme.
En langage C, chaque instruction se termine par un point-virgule ;
Exemple:On doit écrire int x,y; et non pas intx,y;
On peut écrire indi�éremment int n,compte,total,p; ou pour plus de lisibilitéint n, compte, total, p ;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 31
![Page 101: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/101.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les séparateurs
Dans notre langue écrite, les di�érents mots sont séparés par un espace,un signe de ponctuation ou une �n de ligne.
De même en langage C, Il existe certains séparateurs pour délimiter lesexpressions:Évidement, deux identi�cateurs successives entre lesquels la syntaxen'impose aucun signe particulier (, ou = ou ; ou * ou ( ) ou [ ] ou { })doivent impérativement être séparés soit par un espace, soit par une �nde ligne.
Dès que la syntaxe impose un séparateur quelconque, il n'est alors pasobligatoire de mettre des espaces supplémentaires, bien qu'en pratiquecela améliore la lisibilité du programme.
En langage C, chaque instruction se termine par un point-virgule ;
Exemple:On doit écrire int x,y; et non pas intx,y;
On peut écrire indi�éremment int n,compte,total,p; ou pour plus de lisibilitéint n, compte, total, p ;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 31
![Page 102: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/102.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les séparateurs
Dans notre langue écrite, les di�érents mots sont séparés par un espace,un signe de ponctuation ou une �n de ligne.
De même en langage C, Il existe certains séparateurs pour délimiter lesexpressions:Évidement, deux identi�cateurs successives entre lesquels la syntaxen'impose aucun signe particulier (, ou = ou ; ou * ou ( ) ou [ ] ou { })doivent impérativement être séparés soit par un espace, soit par une �nde ligne.
Dès que la syntaxe impose un séparateur quelconque, il n'est alors pasobligatoire de mettre des espaces supplémentaires, bien qu'en pratiquecela améliore la lisibilité du programme.
En langage C, chaque instruction se termine par un point-virgule ;
Exemple:On doit écrire int x,y; et non pas intx,y;
On peut écrire indi�éremment int n,compte,total,p; ou pour plus de lisibilitéint n, compte, total, p ;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 31
![Page 103: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/103.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les séparateurs
Dans notre langue écrite, les di�érents mots sont séparés par un espace,un signe de ponctuation ou une �n de ligne.
De même en langage C, Il existe certains séparateurs pour délimiter lesexpressions:Évidement, deux identi�cateurs successives entre lesquels la syntaxen'impose aucun signe particulier (, ou = ou ; ou * ou ( ) ou [ ] ou { })doivent impérativement être séparés soit par un espace, soit par une �nde ligne.
Dès que la syntaxe impose un séparateur quelconque, il n'est alors pasobligatoire de mettre des espaces supplémentaires, bien qu'en pratiquecela améliore la lisibilité du programme.
En langage C, chaque instruction se termine par un point-virgule ;
Exemple:On doit écrire int x,y; et non pas intx,y;
On peut écrire indi�éremment int n,compte,total,p; ou pour plus de lisibilitéint n, compte, total, p ;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 31
![Page 104: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/104.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Le format libre
Le langage C autorise une mise en page parfaitement libre:Une instruction peut s'étendre sur un nombre quelconque de lignes
Une même ligne peut comporter autant d'instructions que souhaité.
Les �ns de ligne en code source ne jouent pas de rôle particulier, si ce n'estcelui de séparateur, au même titre qu'un espace,
Il existe cependant quelques exceptions:Évidement, un identi�cateur (nom de variable ou de fonction) ne peut êtrecoupé en introduisant une �n de ligne au milieu.
Les constantes chaînes de caractères (qui sont délimité par " ") doiventimpérativement être écrites en une seule ligne (sans introduire de �nsde ligne).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 32
![Page 105: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/105.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Le format libre
Le langage C autorise une mise en page parfaitement libre:Une instruction peut s'étendre sur un nombre quelconque de lignes
Une même ligne peut comporter autant d'instructions que souhaité.
Les �ns de ligne en code source ne jouent pas de rôle particulier, si ce n'estcelui de séparateur, au même titre qu'un espace,
Il existe cependant quelques exceptions:Évidement, un identi�cateur (nom de variable ou de fonction) ne peut êtrecoupé en introduisant une �n de ligne au milieu.
Les constantes chaînes de caractères (qui sont délimité par " ") doiventimpérativement être écrites en une seule ligne (sans introduire de �nsde ligne).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 32
![Page 106: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/106.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Le format libre
Le langage C autorise une mise en page parfaitement libre:Une instruction peut s'étendre sur un nombre quelconque de lignes
Une même ligne peut comporter autant d'instructions que souhaité.
Les �ns de ligne en code source ne jouent pas de rôle particulier, si ce n'estcelui de séparateur, au même titre qu'un espace,
Il existe cependant quelques exceptions:Évidement, un identi�cateur (nom de variable ou de fonction) ne peut êtrecoupé en introduisant une �n de ligne au milieu.
Les constantes chaînes de caractères (qui sont délimité par " ") doiventimpérativement être écrites en une seule ligne (sans introduire de �nsde ligne).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 32
![Page 107: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/107.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Le format libre
Le langage C autorise une mise en page parfaitement libre:Une instruction peut s'étendre sur un nombre quelconque de lignes
Une même ligne peut comporter autant d'instructions que souhaité.
Les �ns de ligne en code source ne jouent pas de rôle particulier, si ce n'estcelui de séparateur, au même titre qu'un espace,
Il existe cependant quelques exceptions:Évidement, un identi�cateur (nom de variable ou de fonction) ne peut êtrecoupé en introduisant une �n de ligne au milieu.
Les constantes chaînes de caractères (qui sont délimité par " ") doiventimpérativement être écrites en une seule ligne (sans introduire de �nsde ligne).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 32
![Page 108: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/108.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Le format libre
Le langage C autorise une mise en page parfaitement libre:Une instruction peut s'étendre sur un nombre quelconque de lignes
Une même ligne peut comporter autant d'instructions que souhaité.
Les �ns de ligne en code source ne jouent pas de rôle particulier, si ce n'estcelui de séparateur, au même titre qu'un espace,
Il existe cependant quelques exceptions:Évidement, un identi�cateur (nom de variable ou de fonction) ne peut êtrecoupé en introduisant une �n de ligne au milieu.
Les constantes chaînes de caractères (qui sont délimité par " ") doiventimpérativement être écrites en une seule ligne (sans introduire de �nsde ligne).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 32
![Page 109: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/109.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Le format libre
Le langage C autorise une mise en page parfaitement libre:Une instruction peut s'étendre sur un nombre quelconque de lignes
Une même ligne peut comporter autant d'instructions que souhaité.
Les �ns de ligne en code source ne jouent pas de rôle particulier, si ce n'estcelui de séparateur, au même titre qu'un espace,
Il existe cependant quelques exceptions:Évidement, un identi�cateur (nom de variable ou de fonction) ne peut êtrecoupé en introduisant une �n de ligne au milieu.
Les constantes chaînes de caractères (qui sont délimité par " ") doiventimpérativement être écrites en une seule ligne (sans introduire de �nsde ligne).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 32
![Page 110: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/110.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Le format libre
Le langage C autorise une mise en page parfaitement libre:Une instruction peut s'étendre sur un nombre quelconque de lignes
Une même ligne peut comporter autant d'instructions que souhaité.
Les �ns de ligne en code source ne jouent pas de rôle particulier, si ce n'estcelui de séparateur, au même titre qu'un espace,
Il existe cependant quelques exceptions:Évidement, un identi�cateur (nom de variable ou de fonction) ne peut êtrecoupé en introduisant une �n de ligne au milieu.
Les constantes chaînes de caractères (qui sont délimité par " ") doiventimpérativement être écrites en une seule ligne (sans introduire de �nsde ligne).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 32
![Page 111: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/111.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Le format libre
La liberté de mise en page n'est pas recommandée car elle aboutit à desprogrammes peu lisibles. Le programme précédent réécrit librementdonne:
N. Alioua Chapitre 1: Langage C - introduction et notions de base 33
![Page 112: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/112.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
#include<stdio.h> est une directive qui sera prise en compte avant latraduction (compilation) du programme.
Les directives sont soumises à certaines règles:Elles doivent être écrites à raison d'une par ligne
Elles doivent obligatoirement commencer en début de ligne (pas d'espaceavant # ).
Elles ne sont pas suivis par un point-virgule, car se ne sont pas desinstructions
On peut les placer à n'importe quel endroit du programme, sachant qu'ellesne s'appliquent qu'à la partie du programme qui les succède.
Il est toutefois préférable de les placer au début du �chier source, avant leprogramme principal (c-à-d la fonction main).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 34
![Page 113: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/113.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
#include<stdio.h> est une directive qui sera prise en compte avant latraduction (compilation) du programme.
Les directives sont soumises à certaines règles:Elles doivent être écrites à raison d'une par ligne
Elles doivent obligatoirement commencer en début de ligne (pas d'espaceavant # ).
Elles ne sont pas suivis par un point-virgule, car se ne sont pas desinstructions
On peut les placer à n'importe quel endroit du programme, sachant qu'ellesne s'appliquent qu'à la partie du programme qui les succède.
Il est toutefois préférable de les placer au début du �chier source, avant leprogramme principal (c-à-d la fonction main).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 34
![Page 114: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/114.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
#include<stdio.h> est une directive qui sera prise en compte avant latraduction (compilation) du programme.
Les directives sont soumises à certaines règles:Elles doivent être écrites à raison d'une par ligne
Elles doivent obligatoirement commencer en début de ligne (pas d'espaceavant # ).
Elles ne sont pas suivis par un point-virgule, car se ne sont pas desinstructions
On peut les placer à n'importe quel endroit du programme, sachant qu'ellesne s'appliquent qu'à la partie du programme qui les succède.
Il est toutefois préférable de les placer au début du �chier source, avant leprogramme principal (c-à-d la fonction main).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 34
![Page 115: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/115.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
#include<stdio.h> est une directive qui sera prise en compte avant latraduction (compilation) du programme.
Les directives sont soumises à certaines règles:Elles doivent être écrites à raison d'une par ligne
Elles doivent obligatoirement commencer en début de ligne (pas d'espaceavant # ).
Elles ne sont pas suivis par un point-virgule, car se ne sont pas desinstructions
On peut les placer à n'importe quel endroit du programme, sachant qu'ellesne s'appliquent qu'à la partie du programme qui les succède.
Il est toutefois préférable de les placer au début du �chier source, avant leprogramme principal (c-à-d la fonction main).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 34
![Page 116: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/116.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
#include<stdio.h> est une directive qui sera prise en compte avant latraduction (compilation) du programme.
Les directives sont soumises à certaines règles:Elles doivent être écrites à raison d'une par ligne
Elles doivent obligatoirement commencer en début de ligne (pas d'espaceavant # ).
Elles ne sont pas suivis par un point-virgule, car se ne sont pas desinstructions
On peut les placer à n'importe quel endroit du programme, sachant qu'ellesne s'appliquent qu'à la partie du programme qui les succède.
Il est toutefois préférable de les placer au début du �chier source, avant leprogramme principal (c-à-d la fonction main).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 34
![Page 117: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/117.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
#include<stdio.h> est une directive qui sera prise en compte avant latraduction (compilation) du programme.
Les directives sont soumises à certaines règles:Elles doivent être écrites à raison d'une par ligne
Elles doivent obligatoirement commencer en début de ligne (pas d'espaceavant # ).
Elles ne sont pas suivis par un point-virgule, car se ne sont pas desinstructions
On peut les placer à n'importe quel endroit du programme, sachant qu'ellesne s'appliquent qu'à la partie du programme qui les succède.
Il est toutefois préférable de les placer au début du �chier source, avant leprogramme principal (c-à-d la fonction main).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 34
![Page 118: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/118.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
#include<stdio.h> est une directive qui sera prise en compte avant latraduction (compilation) du programme.
Les directives sont soumises à certaines règles:Elles doivent être écrites à raison d'une par ligne
Elles doivent obligatoirement commencer en début de ligne (pas d'espaceavant # ).
Elles ne sont pas suivis par un point-virgule, car se ne sont pas desinstructions
On peut les placer à n'importe quel endroit du programme, sachant qu'ellesne s'appliquent qu'à la partie du programme qui les succède.
Il est toutefois préférable de les placer au début du �chier source, avant leprogramme principal (c-à-d la fonction main).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 34
![Page 119: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/119.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
Pour utiliser une fonction prédé�nie dans le code source, il estnécessaire d'inclure les �chiers en-têtes, qui contiennent desdéclarations appropriées concernant ces fonctions
Exemple : stdio.h pour la fonction d'a�chage printf et math.h pourla fonction de la racine carrée sqrt
Un même �chier en-tête contient des déclarations de plusieurs fonctions.
En général, il est indispensable d'inclure stdio.h dans tout programme,puisqu'elle décrit les fonctions prédé�nies pour la saisie et l'a�chage.
Il existe également des directives à destination du préprocesseur pourdéclarer des constantes symboliques:Syntaxe: #de�ne NB 100 sert à remplacer systématiquement, dans toute lasuite du programme, le symbole NB par 100
Les constantes symboliques permettent une meilleur adaptabilité desprogrammes, car au besoin, on pourra remplacer NB par n'importe quelnombre!
N. Alioua Chapitre 1: Langage C - introduction et notions de base 35
![Page 120: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/120.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
Pour utiliser une fonction prédé�nie dans le code source, il estnécessaire d'inclure les �chiers en-têtes, qui contiennent desdéclarations appropriées concernant ces fonctions
Exemple : stdio.h pour la fonction d'a�chage printf et math.h pourla fonction de la racine carrée sqrt
Un même �chier en-tête contient des déclarations de plusieurs fonctions.
En général, il est indispensable d'inclure stdio.h dans tout programme,puisqu'elle décrit les fonctions prédé�nies pour la saisie et l'a�chage.
Il existe également des directives à destination du préprocesseur pourdéclarer des constantes symboliques:Syntaxe: #de�ne NB 100 sert à remplacer systématiquement, dans toute lasuite du programme, le symbole NB par 100
Les constantes symboliques permettent une meilleur adaptabilité desprogrammes, car au besoin, on pourra remplacer NB par n'importe quelnombre!
N. Alioua Chapitre 1: Langage C - introduction et notions de base 35
![Page 121: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/121.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
Pour utiliser une fonction prédé�nie dans le code source, il estnécessaire d'inclure les �chiers en-têtes, qui contiennent desdéclarations appropriées concernant ces fonctions
Exemple : stdio.h pour la fonction d'a�chage printf et math.h pourla fonction de la racine carrée sqrt
Un même �chier en-tête contient des déclarations de plusieurs fonctions.
En général, il est indispensable d'inclure stdio.h dans tout programme,puisqu'elle décrit les fonctions prédé�nies pour la saisie et l'a�chage.
Il existe également des directives à destination du préprocesseur pourdéclarer des constantes symboliques:Syntaxe: #de�ne NB 100 sert à remplacer systématiquement, dans toute lasuite du programme, le symbole NB par 100
Les constantes symboliques permettent une meilleur adaptabilité desprogrammes, car au besoin, on pourra remplacer NB par n'importe quelnombre!
N. Alioua Chapitre 1: Langage C - introduction et notions de base 35
![Page 122: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/122.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
Pour utiliser une fonction prédé�nie dans le code source, il estnécessaire d'inclure les �chiers en-têtes, qui contiennent desdéclarations appropriées concernant ces fonctions
Exemple : stdio.h pour la fonction d'a�chage printf et math.h pourla fonction de la racine carrée sqrt
Un même �chier en-tête contient des déclarations de plusieurs fonctions.
En général, il est indispensable d'inclure stdio.h dans tout programme,puisqu'elle décrit les fonctions prédé�nies pour la saisie et l'a�chage.
Il existe également des directives à destination du préprocesseur pourdéclarer des constantes symboliques:Syntaxe: #de�ne NB 100 sert à remplacer systématiquement, dans toute lasuite du programme, le symbole NB par 100
Les constantes symboliques permettent une meilleur adaptabilité desprogrammes, car au besoin, on pourra remplacer NB par n'importe quelnombre!
N. Alioua Chapitre 1: Langage C - introduction et notions de base 35
![Page 123: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/123.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
Pour utiliser une fonction prédé�nie dans le code source, il estnécessaire d'inclure les �chiers en-têtes, qui contiennent desdéclarations appropriées concernant ces fonctions
Exemple : stdio.h pour la fonction d'a�chage printf et math.h pourla fonction de la racine carrée sqrt
Un même �chier en-tête contient des déclarations de plusieurs fonctions.
En général, il est indispensable d'inclure stdio.h dans tout programme,puisqu'elle décrit les fonctions prédé�nies pour la saisie et l'a�chage.
Il existe également des directives à destination du préprocesseur pourdéclarer des constantes symboliques:Syntaxe: #de�ne NB 100 sert à remplacer systématiquement, dans toute lasuite du programme, le symbole NB par 100
Les constantes symboliques permettent une meilleur adaptabilité desprogrammes, car au besoin, on pourra remplacer NB par n'importe quelnombre!
N. Alioua Chapitre 1: Langage C - introduction et notions de base 35
![Page 124: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/124.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
Pour utiliser une fonction prédé�nie dans le code source, il estnécessaire d'inclure les �chiers en-têtes, qui contiennent desdéclarations appropriées concernant ces fonctions
Exemple : stdio.h pour la fonction d'a�chage printf et math.h pourla fonction de la racine carrée sqrt
Un même �chier en-tête contient des déclarations de plusieurs fonctions.
En général, il est indispensable d'inclure stdio.h dans tout programme,puisqu'elle décrit les fonctions prédé�nies pour la saisie et l'a�chage.
Il existe également des directives à destination du préprocesseur pourdéclarer des constantes symboliques:Syntaxe: #de�ne NB 100 sert à remplacer systématiquement, dans toute lasuite du programme, le symbole NB par 100
Les constantes symboliques permettent une meilleur adaptabilité desprogrammes, car au besoin, on pourra remplacer NB par n'importe quelnombre!
N. Alioua Chapitre 1: Langage C - introduction et notions de base 35
![Page 125: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/125.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Les directives à destination du préprocesseur
Pour utiliser une fonction prédé�nie dans le code source, il estnécessaire d'inclure les �chiers en-têtes, qui contiennent desdéclarations appropriées concernant ces fonctions
Exemple : stdio.h pour la fonction d'a�chage printf et math.h pourla fonction de la racine carrée sqrt
Un même �chier en-tête contient des déclarations de plusieurs fonctions.
En général, il est indispensable d'inclure stdio.h dans tout programme,puisqu'elle décrit les fonctions prédé�nies pour la saisie et l'a�chage.
Il existe également des directives à destination du préprocesseur pourdéclarer des constantes symboliques:Syntaxe: #de�ne NB 100 sert à remplacer systématiquement, dans toute lasuite du programme, le symbole NB par 100
Les constantes symboliques permettent une meilleur adaptabilité desprogrammes, car au besoin, on pourra remplacer NB par n'importe quelnombre!
N. Alioua Chapitre 1: Langage C - introduction et notions de base 35
![Page 126: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/126.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Commentaires en C
Les commentaires sont des instructions non prise en compte par leCompilateur, qui servent à ajouter des remarques concernant le code.
En C, il y a deux types de commentaires :Commentaire multi-ligne. Syntaxe :/* commentaire ligne 1commentaire ligne 2...commentaire ligne n */
Commentaire abrégé. Syntaxe : // commentaire sur une seule ligne.Ce type de commentaire a été introduit dans la norme C99.Tout ce qui suit les caractères // jusqu'à la �n de la ligne est considérécomme un commentaire
N. Alioua Chapitre 1: Langage C - introduction et notions de base 36
![Page 127: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/127.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Commentaires en C
Les commentaires sont des instructions non prise en compte par leCompilateur, qui servent à ajouter des remarques concernant le code.
En C, il y a deux types de commentaires :Commentaire multi-ligne. Syntaxe :/* commentaire ligne 1commentaire ligne 2...commentaire ligne n */
Commentaire abrégé. Syntaxe : // commentaire sur une seule ligne.Ce type de commentaire a été introduit dans la norme C99.Tout ce qui suit les caractères // jusqu'à la �n de la ligne est considérécomme un commentaire
N. Alioua Chapitre 1: Langage C - introduction et notions de base 36
![Page 128: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/128.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Commentaires en C
Les commentaires sont des instructions non prise en compte par leCompilateur, qui servent à ajouter des remarques concernant le code.
En C, il y a deux types de commentaires :Commentaire multi-ligne. Syntaxe :/* commentaire ligne 1commentaire ligne 2...commentaire ligne n */
Commentaire abrégé. Syntaxe : // commentaire sur une seule ligne.Ce type de commentaire a été introduit dans la norme C99.Tout ce qui suit les caractères // jusqu'à la �n de la ligne est considérécomme un commentaire
N. Alioua Chapitre 1: Langage C - introduction et notions de base 36
![Page 129: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/129.jpg)
Éléments généraux d'un programme en langage C Divers éléments du code source
Commentaires en C
Les commentaires sont des instructions non prise en compte par leCompilateur, qui servent à ajouter des remarques concernant le code.
En C, il y a deux types de commentaires :Commentaire multi-ligne. Syntaxe :/* commentaire ligne 1commentaire ligne 2...commentaire ligne n */
Commentaire abrégé. Syntaxe : // commentaire sur une seule ligne.Ce type de commentaire a été introduit dans la norme C99.Tout ce qui suit les caractères // jusqu'à la �n de la ligne est considérécomme un commentaire
N. Alioua Chapitre 1: Langage C - introduction et notions de base 36
![Page 130: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/130.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage CExemple de programmeDivers éléments du code sourceÉtapes de création d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 37
![Page 131: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/131.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Vue générale
La manière de développer et d'utiliser un programme en langage Cdépend naturellement de l'environnement de programmation dans lequelon travaille.
Cependant, il existe quelques indications concernant les grandes étapesde la création d'un programme: édition du programme, compilationet édition de liens.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 38
![Page 132: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/132.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
L'édition du programme
L'édition du programme (appelée aussi saisie du programme) consiste àcréer, à partir d'un clavier, le texte d'un programme qu'on nommeprogramme ou code source .
En général, ce texte sera conservé dans un �chier appelé �chier source.
Chaque système possède ses propres conventions de dénomination des�chiers.
En général, un �chier peut, en plus de son nom, être caractérisé par ungroupe de caractères qu'on appelle une extension ou un type de�chier
La plupart du temps, en langage C, les �chiers source porterontl'extension C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 39
![Page 133: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/133.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
L'édition du programme
L'édition du programme (appelée aussi saisie du programme) consiste àcréer, à partir d'un clavier, le texte d'un programme qu'on nommeprogramme ou code source .
En général, ce texte sera conservé dans un �chier appelé �chier source.
Chaque système possède ses propres conventions de dénomination des�chiers.
En général, un �chier peut, en plus de son nom, être caractérisé par ungroupe de caractères qu'on appelle une extension ou un type de�chier
La plupart du temps, en langage C, les �chiers source porterontl'extension C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 39
![Page 134: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/134.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
L'édition du programme
L'édition du programme (appelée aussi saisie du programme) consiste àcréer, à partir d'un clavier, le texte d'un programme qu'on nommeprogramme ou code source .
En général, ce texte sera conservé dans un �chier appelé �chier source.
Chaque système possède ses propres conventions de dénomination des�chiers.
En général, un �chier peut, en plus de son nom, être caractérisé par ungroupe de caractères qu'on appelle une extension ou un type de�chier
La plupart du temps, en langage C, les �chiers source porterontl'extension C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 39
![Page 135: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/135.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
L'édition du programme
L'édition du programme (appelée aussi saisie du programme) consiste àcréer, à partir d'un clavier, le texte d'un programme qu'on nommeprogramme ou code source .
En général, ce texte sera conservé dans un �chier appelé �chier source.
Chaque système possède ses propres conventions de dénomination des�chiers.
En général, un �chier peut, en plus de son nom, être caractérisé par ungroupe de caractères qu'on appelle une extension ou un type de�chier
La plupart du temps, en langage C, les �chiers source porterontl'extension C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 39
![Page 136: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/136.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
L'édition du programme
L'édition du programme (appelée aussi saisie du programme) consiste àcréer, à partir d'un clavier, le texte d'un programme qu'on nommeprogramme ou code source .
En général, ce texte sera conservé dans un �chier appelé �chier source.
Chaque système possède ses propres conventions de dénomination des�chiers.
En général, un �chier peut, en plus de son nom, être caractérisé par ungroupe de caractères qu'on appelle une extension ou un type de�chier
La plupart du temps, en langage C, les �chiers source porterontl'extension C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 39
![Page 137: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/137.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
La compilation
Elle consiste à traduire le programme source en langage machine, enfaisant appel à un programme nommé compilateur.
En langage C, compte tenu de l'existence d'un préprocesseur, cetteopération de compilation comporte deux étapes : Traitement par lepréprocesseur et compilation proprement dite
Traitement par le préprocesseur :Le préprocesseur exécute simplement les directives qui le concernent, qu'ilreconnaît grâce au caractère #.
Il produit, en résultat, un programme source en langage C pur.
Il s'agit toujours d'un vrai texte, au même titre qu'un programme source
Compilation proprement dite :E�ectue la traduction en langage machine du texte en langage C fourni parle préprocesseur.
Le résultat de la compilation porte le nom de module objet, reconnu parl'extension OBJ ou O.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 40
![Page 138: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/138.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
La compilation
Elle consiste à traduire le programme source en langage machine, enfaisant appel à un programme nommé compilateur.
En langage C, compte tenu de l'existence d'un préprocesseur, cetteopération de compilation comporte deux étapes : Traitement par lepréprocesseur et compilation proprement dite
Traitement par le préprocesseur :Le préprocesseur exécute simplement les directives qui le concernent, qu'ilreconnaît grâce au caractère #.
Il produit, en résultat, un programme source en langage C pur.
Il s'agit toujours d'un vrai texte, au même titre qu'un programme source
Compilation proprement dite :E�ectue la traduction en langage machine du texte en langage C fourni parle préprocesseur.
Le résultat de la compilation porte le nom de module objet, reconnu parl'extension OBJ ou O.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 40
![Page 139: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/139.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
La compilation
Elle consiste à traduire le programme source en langage machine, enfaisant appel à un programme nommé compilateur.
En langage C, compte tenu de l'existence d'un préprocesseur, cetteopération de compilation comporte deux étapes : Traitement par lepréprocesseur et compilation proprement dite
Traitement par le préprocesseur :Le préprocesseur exécute simplement les directives qui le concernent, qu'ilreconnaît grâce au caractère #.
Il produit, en résultat, un programme source en langage C pur.
Il s'agit toujours d'un vrai texte, au même titre qu'un programme source
Compilation proprement dite :E�ectue la traduction en langage machine du texte en langage C fourni parle préprocesseur.
Le résultat de la compilation porte le nom de module objet, reconnu parl'extension OBJ ou O.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 40
![Page 140: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/140.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
La compilation
Elle consiste à traduire le programme source en langage machine, enfaisant appel à un programme nommé compilateur.
En langage C, compte tenu de l'existence d'un préprocesseur, cetteopération de compilation comporte deux étapes : Traitement par lepréprocesseur et compilation proprement dite
Traitement par le préprocesseur :Le préprocesseur exécute simplement les directives qui le concernent, qu'ilreconnaît grâce au caractère #.
Il produit, en résultat, un programme source en langage C pur.
Il s'agit toujours d'un vrai texte, au même titre qu'un programme source
Compilation proprement dite :E�ectue la traduction en langage machine du texte en langage C fourni parle préprocesseur.
Le résultat de la compilation porte le nom de module objet, reconnu parl'extension OBJ ou O.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 40
![Page 141: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/141.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
La compilation
Elle consiste à traduire le programme source en langage machine, enfaisant appel à un programme nommé compilateur.
En langage C, compte tenu de l'existence d'un préprocesseur, cetteopération de compilation comporte deux étapes : Traitement par lepréprocesseur et compilation proprement dite
Traitement par le préprocesseur :Le préprocesseur exécute simplement les directives qui le concernent, qu'ilreconnaît grâce au caractère #.
Il produit, en résultat, un programme source en langage C pur.
Il s'agit toujours d'un vrai texte, au même titre qu'un programme source
Compilation proprement dite :E�ectue la traduction en langage machine du texte en langage C fourni parle préprocesseur.
Le résultat de la compilation porte le nom de module objet, reconnu parl'extension OBJ ou O.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 40
![Page 142: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/142.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
La compilation
Elle consiste à traduire le programme source en langage machine, enfaisant appel à un programme nommé compilateur.
En langage C, compte tenu de l'existence d'un préprocesseur, cetteopération de compilation comporte deux étapes : Traitement par lepréprocesseur et compilation proprement dite
Traitement par le préprocesseur :Le préprocesseur exécute simplement les directives qui le concernent, qu'ilreconnaît grâce au caractère #.
Il produit, en résultat, un programme source en langage C pur.
Il s'agit toujours d'un vrai texte, au même titre qu'un programme source
Compilation proprement dite :E�ectue la traduction en langage machine du texte en langage C fourni parle préprocesseur.
Le résultat de la compilation porte le nom de module objet, reconnu parl'extension OBJ ou O.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 40
![Page 143: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/143.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
La compilation
Elle consiste à traduire le programme source en langage machine, enfaisant appel à un programme nommé compilateur.
En langage C, compte tenu de l'existence d'un préprocesseur, cetteopération de compilation comporte deux étapes : Traitement par lepréprocesseur et compilation proprement dite
Traitement par le préprocesseur :Le préprocesseur exécute simplement les directives qui le concernent, qu'ilreconnaît grâce au caractère #.
Il produit, en résultat, un programme source en langage C pur.
Il s'agit toujours d'un vrai texte, au même titre qu'un programme source
Compilation proprement dite :E�ectue la traduction en langage machine du texte en langage C fourni parle préprocesseur.
Le résultat de la compilation porte le nom de module objet, reconnu parl'extension OBJ ou O.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 40
![Page 144: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/144.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
La compilation
Elle consiste à traduire le programme source en langage machine, enfaisant appel à un programme nommé compilateur.
En langage C, compte tenu de l'existence d'un préprocesseur, cetteopération de compilation comporte deux étapes : Traitement par lepréprocesseur et compilation proprement dite
Traitement par le préprocesseur :Le préprocesseur exécute simplement les directives qui le concernent, qu'ilreconnaît grâce au caractère #.
Il produit, en résultat, un programme source en langage C pur.
Il s'agit toujours d'un vrai texte, au même titre qu'un programme source
Compilation proprement dite :E�ectue la traduction en langage machine du texte en langage C fourni parle préprocesseur.
Le résultat de la compilation porte le nom de module objet, reconnu parl'extension OBJ ou O.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 40
![Page 145: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/145.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
La compilation
Elle consiste à traduire le programme source en langage machine, enfaisant appel à un programme nommé compilateur.
En langage C, compte tenu de l'existence d'un préprocesseur, cetteopération de compilation comporte deux étapes : Traitement par lepréprocesseur et compilation proprement dite
Traitement par le préprocesseur :Le préprocesseur exécute simplement les directives qui le concernent, qu'ilreconnaît grâce au caractère #.
Il produit, en résultat, un programme source en langage C pur.
Il s'agit toujours d'un vrai texte, au même titre qu'un programme source
Compilation proprement dite :E�ectue la traduction en langage machine du texte en langage C fourni parle préprocesseur.
Le résultat de la compilation porte le nom de module objet, reconnu parl'extension OBJ ou O.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 40
![Page 146: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/146.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
L'édition de liens
Le module objet créé par le compilateur n'est pas directementexécutable. Il lui manque, au moins, les di�érents modules objetcorrespondant aux fonctions prédé�nies (appelées aussi fonctionsstandard ) utilisées par le programme (comme la fonction d'a�chageprintf).
C'est le rôle de l'éditeur de liens, qui recherche dans la bibliothèquestandard (stdio.h pour printf) les modules objet nécessaires.
Le résultat de l'édition de liens est ce que l'on nomme un programmeexécutable.
Un programme exécutable est un ensemble autonome d'instructionsen langage machine.
Si ce programme exécutable est rangé dans un �chier, il pourra êtreexécuté plus tard sans faire appel à un quelconque composant del'environnement de programmation en C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 41
![Page 147: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/147.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
L'édition de liens
Le module objet créé par le compilateur n'est pas directementexécutable. Il lui manque, au moins, les di�érents modules objetcorrespondant aux fonctions prédé�nies (appelées aussi fonctionsstandard ) utilisées par le programme (comme la fonction d'a�chageprintf).
C'est le rôle de l'éditeur de liens, qui recherche dans la bibliothèquestandard (stdio.h pour printf) les modules objet nécessaires.
Le résultat de l'édition de liens est ce que l'on nomme un programmeexécutable.
Un programme exécutable est un ensemble autonome d'instructionsen langage machine.
Si ce programme exécutable est rangé dans un �chier, il pourra êtreexécuté plus tard sans faire appel à un quelconque composant del'environnement de programmation en C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 41
![Page 148: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/148.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
L'édition de liens
Le module objet créé par le compilateur n'est pas directementexécutable. Il lui manque, au moins, les di�érents modules objetcorrespondant aux fonctions prédé�nies (appelées aussi fonctionsstandard ) utilisées par le programme (comme la fonction d'a�chageprintf).
C'est le rôle de l'éditeur de liens, qui recherche dans la bibliothèquestandard (stdio.h pour printf) les modules objet nécessaires.
Le résultat de l'édition de liens est ce que l'on nomme un programmeexécutable.
Un programme exécutable est un ensemble autonome d'instructionsen langage machine.
Si ce programme exécutable est rangé dans un �chier, il pourra êtreexécuté plus tard sans faire appel à un quelconque composant del'environnement de programmation en C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 41
![Page 149: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/149.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
L'édition de liens
Le module objet créé par le compilateur n'est pas directementexécutable. Il lui manque, au moins, les di�érents modules objetcorrespondant aux fonctions prédé�nies (appelées aussi fonctionsstandard ) utilisées par le programme (comme la fonction d'a�chageprintf).
C'est le rôle de l'éditeur de liens, qui recherche dans la bibliothèquestandard (stdio.h pour printf) les modules objet nécessaires.
Le résultat de l'édition de liens est ce que l'on nomme un programmeexécutable.
Un programme exécutable est un ensemble autonome d'instructionsen langage machine.
Si ce programme exécutable est rangé dans un �chier, il pourra êtreexécuté plus tard sans faire appel à un quelconque composant del'environnement de programmation en C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 41
![Page 150: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/150.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
L'édition de liens
Le module objet créé par le compilateur n'est pas directementexécutable. Il lui manque, au moins, les di�érents modules objetcorrespondant aux fonctions prédé�nies (appelées aussi fonctionsstandard ) utilisées par le programme (comme la fonction d'a�chageprintf).
C'est le rôle de l'éditeur de liens, qui recherche dans la bibliothèquestandard (stdio.h pour printf) les modules objet nécessaires.
Le résultat de l'édition de liens est ce que l'on nomme un programmeexécutable.
Un programme exécutable est un ensemble autonome d'instructionsen langage machine.
Si ce programme exécutable est rangé dans un �chier, il pourra êtreexécuté plus tard sans faire appel à un quelconque composant del'environnement de programmation en C.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 41
![Page 151: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/151.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Résumé des étapes de programmation en C
Code source :série de commandes ou de déclarations qui indiquent à l'ordinateur lestaches qu'il devra exécuter. première étape du développement.
le code source est crée à l'aide d'un éditeur.
Éditeur :permet de créer le code source. C'est une sorte d'éditeur de texte
Compilation :opération réalisée par un compilateur qui transforme le �chier code sourceen un �chier objet contenant les mêmes instructions en langage machine.
Exécution :processus par lequel un ordinateur met en ÷uvre les instructions d'unprogramme informatique.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 42
![Page 152: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/152.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Résumé des étapes de programmation en C
Code source :série de commandes ou de déclarations qui indiquent à l'ordinateur lestaches qu'il devra exécuter. première étape du développement.
le code source est crée à l'aide d'un éditeur.
Éditeur :permet de créer le code source. C'est une sorte d'éditeur de texte
Compilation :opération réalisée par un compilateur qui transforme le �chier code sourceen un �chier objet contenant les mêmes instructions en langage machine.
Exécution :processus par lequel un ordinateur met en ÷uvre les instructions d'unprogramme informatique.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 42
![Page 153: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/153.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Résumé des étapes de programmation en C
Code source :série de commandes ou de déclarations qui indiquent à l'ordinateur lestaches qu'il devra exécuter. première étape du développement.
le code source est crée à l'aide d'un éditeur.
Éditeur :permet de créer le code source. C'est une sorte d'éditeur de texte
Compilation :opération réalisée par un compilateur qui transforme le �chier code sourceen un �chier objet contenant les mêmes instructions en langage machine.
Exécution :processus par lequel un ordinateur met en ÷uvre les instructions d'unprogramme informatique.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 42
![Page 154: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/154.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Résumé des étapes de programmation en C
Code source :série de commandes ou de déclarations qui indiquent à l'ordinateur lestaches qu'il devra exécuter. première étape du développement.
le code source est crée à l'aide d'un éditeur.
Éditeur :permet de créer le code source. C'est une sorte d'éditeur de texte
Compilation :opération réalisée par un compilateur qui transforme le �chier code sourceen un �chier objet contenant les mêmes instructions en langage machine.
Exécution :processus par lequel un ordinateur met en ÷uvre les instructions d'unprogramme informatique.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 42
![Page 155: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/155.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Résumé des étapes de programmation en C
Code source :série de commandes ou de déclarations qui indiquent à l'ordinateur lestaches qu'il devra exécuter. première étape du développement.
le code source est crée à l'aide d'un éditeur.
Éditeur :permet de créer le code source. C'est une sorte d'éditeur de texte
Compilation :opération réalisée par un compilateur qui transforme le �chier code sourceen un �chier objet contenant les mêmes instructions en langage machine.
Exécution :processus par lequel un ordinateur met en ÷uvre les instructions d'unprogramme informatique.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 42
![Page 156: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/156.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Résumé des étapes de programmation en C
Code source :série de commandes ou de déclarations qui indiquent à l'ordinateur lestaches qu'il devra exécuter. première étape du développement.
le code source est crée à l'aide d'un éditeur.
Éditeur :permet de créer le code source. C'est une sorte d'éditeur de texte
Compilation :opération réalisée par un compilateur qui transforme le �chier code sourceen un �chier objet contenant les mêmes instructions en langage machine.
Exécution :processus par lequel un ordinateur met en ÷uvre les instructions d'unprogramme informatique.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 42
![Page 157: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/157.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Résumé des étapes de programmation en C
Code source :série de commandes ou de déclarations qui indiquent à l'ordinateur lestaches qu'il devra exécuter. première étape du développement.
le code source est crée à l'aide d'un éditeur.
Éditeur :permet de créer le code source. C'est une sorte d'éditeur de texte
Compilation :opération réalisée par un compilateur qui transforme le �chier code sourceen un �chier objet contenant les mêmes instructions en langage machine.
Exécution :processus par lequel un ordinateur met en ÷uvre les instructions d'unprogramme informatique.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 42
![Page 158: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/158.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Résumé des étapes de programmation en C
Code source :série de commandes ou de déclarations qui indiquent à l'ordinateur lestaches qu'il devra exécuter. première étape du développement.
le code source est crée à l'aide d'un éditeur.
Éditeur :permet de créer le code source. C'est une sorte d'éditeur de texte
Compilation :opération réalisée par un compilateur qui transforme le �chier code sourceen un �chier objet contenant les mêmes instructions en langage machine.
Exécution :processus par lequel un ordinateur met en ÷uvre les instructions d'unprogramme informatique.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 42
![Page 159: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/159.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Résumé des étapes de programmation en C
Code source :série de commandes ou de déclarations qui indiquent à l'ordinateur lestaches qu'il devra exécuter. première étape du développement.
le code source est crée à l'aide d'un éditeur.
Éditeur :permet de créer le code source. C'est une sorte d'éditeur de texte
Compilation :opération réalisée par un compilateur qui transforme le �chier code sourceen un �chier objet contenant les mêmes instructions en langage machine.
Exécution :processus par lequel un ordinateur met en ÷uvre les instructions d'unprogramme informatique.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 42
![Page 160: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/160.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Déroulement des étapes
1 Utiliser un éditeur pour créer le code source. Par convention, ce�chier source doit avoir l'extension .c
2 Compiler le programme. Si le compilateur ne rencontre pas d'erreurdans le code source, on obtient un �chier objet du même nom que le�chier source avec une extension .obj ou .o . Si le code source contientdes erreurs, le compilateur échoue et les a�che pour que leprogrammeur les corrige.
3 Exécuter le �chier objet. Si aucune erreur n'apparaît, on obtient unprogramme exécutable dans un �chier du même nom que le �chier objet(avec une extension .exe sous Windows).
4 Exécuter le �chier exécutable pour avoir les résultats du programme.
5 Contrôlez les résultats obtenus et recommencer à l'étape 1 si desmodi�cations sont nécessaires dans le �chier source.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 43
![Page 161: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/161.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Déroulement des étapes
1 Utiliser un éditeur pour créer le code source. Par convention, ce�chier source doit avoir l'extension .c
2 Compiler le programme. Si le compilateur ne rencontre pas d'erreurdans le code source, on obtient un �chier objet du même nom que le�chier source avec une extension .obj ou .o . Si le code source contientdes erreurs, le compilateur échoue et les a�che pour que leprogrammeur les corrige.
3 Exécuter le �chier objet. Si aucune erreur n'apparaît, on obtient unprogramme exécutable dans un �chier du même nom que le �chier objet(avec une extension .exe sous Windows).
4 Exécuter le �chier exécutable pour avoir les résultats du programme.
5 Contrôlez les résultats obtenus et recommencer à l'étape 1 si desmodi�cations sont nécessaires dans le �chier source.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 43
![Page 162: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/162.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Déroulement des étapes
1 Utiliser un éditeur pour créer le code source. Par convention, ce�chier source doit avoir l'extension .c
2 Compiler le programme. Si le compilateur ne rencontre pas d'erreurdans le code source, on obtient un �chier objet du même nom que le�chier source avec une extension .obj ou .o . Si le code source contientdes erreurs, le compilateur échoue et les a�che pour que leprogrammeur les corrige.
3 Exécuter le �chier objet. Si aucune erreur n'apparaît, on obtient unprogramme exécutable dans un �chier du même nom que le �chier objet(avec une extension .exe sous Windows).
4 Exécuter le �chier exécutable pour avoir les résultats du programme.
5 Contrôlez les résultats obtenus et recommencer à l'étape 1 si desmodi�cations sont nécessaires dans le �chier source.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 43
![Page 163: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/163.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Déroulement des étapes
1 Utiliser un éditeur pour créer le code source. Par convention, ce�chier source doit avoir l'extension .c
2 Compiler le programme. Si le compilateur ne rencontre pas d'erreurdans le code source, on obtient un �chier objet du même nom que le�chier source avec une extension .obj ou .o . Si le code source contientdes erreurs, le compilateur échoue et les a�che pour que leprogrammeur les corrige.
3 Exécuter le �chier objet. Si aucune erreur n'apparaît, on obtient unprogramme exécutable dans un �chier du même nom que le �chier objet(avec une extension .exe sous Windows).
4 Exécuter le �chier exécutable pour avoir les résultats du programme.
5 Contrôlez les résultats obtenus et recommencer à l'étape 1 si desmodi�cations sont nécessaires dans le �chier source.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 43
![Page 164: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/164.jpg)
Éléments généraux d'un programme en langage C Étapes de création d'un programme en langage C
Déroulement des étapes
1 Utiliser un éditeur pour créer le code source. Par convention, ce�chier source doit avoir l'extension .c
2 Compiler le programme. Si le compilateur ne rencontre pas d'erreurdans le code source, on obtient un �chier objet du même nom que le�chier source avec une extension .obj ou .o . Si le code source contientdes erreurs, le compilateur échoue et les a�che pour que leprogrammeur les corrige.
3 Exécuter le �chier objet. Si aucune erreur n'apparaît, on obtient unprogramme exécutable dans un �chier du même nom que le �chier objet(avec une extension .exe sous Windows).
4 Exécuter le �chier exécutable pour avoir les résultats du programme.
5 Contrôlez les résultats obtenus et recommencer à l'étape 1 si desmodi�cations sont nécessaires dans le �chier source.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 43
![Page 165: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/165.jpg)
Les types de base en langage C
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage CTypes entierTypes �ottantType caractère
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 44
![Page 166: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/166.jpg)
Les types de base en langage C
La notion de type
La mémoire centrale d'un ordinateur est composée d'un ensemble depositions binaires:On stock des bits (0 ou 1) dans ces positions.
Les bits sont regroupés en octets (8 bits)
Chaque octet est repéré par ce qu'on nomme son adresse.
L'ordinateur ne sait représenter et traiter que des informationsexprimées sous forme binaire:Toute information devra être codée sous cette forme.
Il ne su�t pas de connaître le contenu d'un emplacement de la mémoirepour lui donner une signi�cation.
Par exemple, si un octet contient (01001101)2, il peut correspondre à(77)10, mais il peut correspondre à une autre information (caractère M enASCII par exemple ou une partie d'un nombre réel)
On conclut qu'on ne peut pas attribuer une signi�cation à une informationbinaire tant qu'on ne connaît pas quel type d'information elle représente.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 45
![Page 167: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/167.jpg)
Les types de base en langage C
La notion de type
La mémoire centrale d'un ordinateur est composée d'un ensemble depositions binaires:On stock des bits (0 ou 1) dans ces positions.
Les bits sont regroupés en octets (8 bits)
Chaque octet est repéré par ce qu'on nomme son adresse.
L'ordinateur ne sait représenter et traiter que des informationsexprimées sous forme binaire:Toute information devra être codée sous cette forme.
Il ne su�t pas de connaître le contenu d'un emplacement de la mémoirepour lui donner une signi�cation.
Par exemple, si un octet contient (01001101)2, il peut correspondre à(77)10, mais il peut correspondre à une autre information (caractère M enASCII par exemple ou une partie d'un nombre réel)
On conclut qu'on ne peut pas attribuer une signi�cation à une informationbinaire tant qu'on ne connaît pas quel type d'information elle représente.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 45
![Page 168: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/168.jpg)
Les types de base en langage C
La notion de type
La mémoire centrale d'un ordinateur est composée d'un ensemble depositions binaires:On stock des bits (0 ou 1) dans ces positions.
Les bits sont regroupés en octets (8 bits)
Chaque octet est repéré par ce qu'on nomme son adresse.
L'ordinateur ne sait représenter et traiter que des informationsexprimées sous forme binaire:Toute information devra être codée sous cette forme.
Il ne su�t pas de connaître le contenu d'un emplacement de la mémoirepour lui donner une signi�cation.
Par exemple, si un octet contient (01001101)2, il peut correspondre à(77)10, mais il peut correspondre à une autre information (caractère M enASCII par exemple ou une partie d'un nombre réel)
On conclut qu'on ne peut pas attribuer une signi�cation à une informationbinaire tant qu'on ne connaît pas quel type d'information elle représente.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 45
![Page 169: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/169.jpg)
Les types de base en langage C
La notion de type
La mémoire centrale d'un ordinateur est composée d'un ensemble depositions binaires:On stock des bits (0 ou 1) dans ces positions.
Les bits sont regroupés en octets (8 bits)
Chaque octet est repéré par ce qu'on nomme son adresse.
L'ordinateur ne sait représenter et traiter que des informationsexprimées sous forme binaire:Toute information devra être codée sous cette forme.
Il ne su�t pas de connaître le contenu d'un emplacement de la mémoirepour lui donner une signi�cation.
Par exemple, si un octet contient (01001101)2, il peut correspondre à(77)10, mais il peut correspondre à une autre information (caractère M enASCII par exemple ou une partie d'un nombre réel)
On conclut qu'on ne peut pas attribuer une signi�cation à une informationbinaire tant qu'on ne connaît pas quel type d'information elle représente.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 45
![Page 170: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/170.jpg)
Les types de base en langage C
La notion de type
La mémoire centrale d'un ordinateur est composée d'un ensemble depositions binaires:On stock des bits (0 ou 1) dans ces positions.
Les bits sont regroupés en octets (8 bits)
Chaque octet est repéré par ce qu'on nomme son adresse.
L'ordinateur ne sait représenter et traiter que des informationsexprimées sous forme binaire:Toute information devra être codée sous cette forme.
Il ne su�t pas de connaître le contenu d'un emplacement de la mémoirepour lui donner une signi�cation.
Par exemple, si un octet contient (01001101)2, il peut correspondre à(77)10, mais il peut correspondre à une autre information (caractère M enASCII par exemple ou une partie d'un nombre réel)
On conclut qu'on ne peut pas attribuer une signi�cation à une informationbinaire tant qu'on ne connaît pas quel type d'information elle représente.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 45
![Page 171: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/171.jpg)
Les types de base en langage C
La notion de type
La mémoire centrale d'un ordinateur est composée d'un ensemble depositions binaires:On stock des bits (0 ou 1) dans ces positions.
Les bits sont regroupés en octets (8 bits)
Chaque octet est repéré par ce qu'on nomme son adresse.
L'ordinateur ne sait représenter et traiter que des informationsexprimées sous forme binaire:Toute information devra être codée sous cette forme.
Il ne su�t pas de connaître le contenu d'un emplacement de la mémoirepour lui donner une signi�cation.
Par exemple, si un octet contient (01001101)2, il peut correspondre à(77)10, mais il peut correspondre à une autre information (caractère M enASCII par exemple ou une partie d'un nombre réel)
On conclut qu'on ne peut pas attribuer une signi�cation à une informationbinaire tant qu'on ne connaît pas quel type d'information elle représente.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 45
![Page 172: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/172.jpg)
Les types de base en langage C
La notion de type
La mémoire centrale d'un ordinateur est composée d'un ensemble depositions binaires:On stock des bits (0 ou 1) dans ces positions.
Les bits sont regroupés en octets (8 bits)
Chaque octet est repéré par ce qu'on nomme son adresse.
L'ordinateur ne sait représenter et traiter que des informationsexprimées sous forme binaire:Toute information devra être codée sous cette forme.
Il ne su�t pas de connaître le contenu d'un emplacement de la mémoirepour lui donner une signi�cation.
Par exemple, si un octet contient (01001101)2, il peut correspondre à(77)10, mais il peut correspondre à une autre information (caractère M enASCII par exemple ou une partie d'un nombre réel)
On conclut qu'on ne peut pas attribuer une signi�cation à une informationbinaire tant qu'on ne connaît pas quel type d'information elle représente.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 45
![Page 173: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/173.jpg)
Les types de base en langage C
La notion de type
La mémoire centrale d'un ordinateur est composée d'un ensemble depositions binaires:On stock des bits (0 ou 1) dans ces positions.
Les bits sont regroupés en octets (8 bits)
Chaque octet est repéré par ce qu'on nomme son adresse.
L'ordinateur ne sait représenter et traiter que des informationsexprimées sous forme binaire:Toute information devra être codée sous cette forme.
Il ne su�t pas de connaître le contenu d'un emplacement de la mémoirepour lui donner une signi�cation.
Par exemple, si un octet contient (01001101)2, il peut correspondre à(77)10, mais il peut correspondre à une autre information (caractère M enASCII par exemple ou une partie d'un nombre réel)
On conclut qu'on ne peut pas attribuer une signi�cation à une informationbinaire tant qu'on ne connaît pas quel type d'information elle représente.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 45
![Page 174: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/174.jpg)
Les types de base en langage C
La notion de type
La mémoire centrale d'un ordinateur est composée d'un ensemble depositions binaires:On stock des bits (0 ou 1) dans ces positions.
Les bits sont regroupés en octets (8 bits)
Chaque octet est repéré par ce qu'on nomme son adresse.
L'ordinateur ne sait représenter et traiter que des informationsexprimées sous forme binaire:Toute information devra être codée sous cette forme.
Il ne su�t pas de connaître le contenu d'un emplacement de la mémoirepour lui donner une signi�cation.
Par exemple, si un octet contient (01001101)2, il peut correspondre à(77)10, mais il peut correspondre à une autre information (caractère M enASCII par exemple ou une partie d'un nombre réel)
On conclut qu'on ne peut pas attribuer une signi�cation à une informationbinaire tant qu'on ne connaît pas quel type d'information elle représente.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 45
![Page 175: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/175.jpg)
Les types de base en langage C
Les types en C
Les types en langage C se répartissent en trois familles :Les entiers
Les �ottants
Les caractères
Le type permet de dé�nir :Plage de valeurs acceptées
Famille de valeurs reçues par la variable dé�nie
Le type de la variable doit être mentionné dès la déclaration de lavariable.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 46
![Page 176: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/176.jpg)
Les types de base en langage C
Les types en C
Les types en langage C se répartissent en trois familles :Les entiers
Les �ottants
Les caractères
Le type permet de dé�nir :Plage de valeurs acceptées
Famille de valeurs reçues par la variable dé�nie
Le type de la variable doit être mentionné dès la déclaration de lavariable.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 46
![Page 177: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/177.jpg)
Les types de base en langage C
Les types en C
Les types en langage C se répartissent en trois familles :Les entiers
Les �ottants
Les caractères
Le type permet de dé�nir :Plage de valeurs acceptées
Famille de valeurs reçues par la variable dé�nie
Le type de la variable doit être mentionné dès la déclaration de lavariable.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 46
![Page 178: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/178.jpg)
Les types de base en langage C
Les types en C
Les types en langage C se répartissent en trois familles :Les entiers
Les �ottants
Les caractères
Le type permet de dé�nir :Plage de valeurs acceptées
Famille de valeurs reçues par la variable dé�nie
Le type de la variable doit être mentionné dès la déclaration de lavariable.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 46
![Page 179: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/179.jpg)
Les types de base en langage C
Les types en C
Les types en langage C se répartissent en trois familles :Les entiers
Les �ottants
Les caractères
Le type permet de dé�nir :Plage de valeurs acceptées
Famille de valeurs reçues par la variable dé�nie
Le type de la variable doit être mentionné dès la déclaration de lavariable.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 46
![Page 180: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/180.jpg)
Les types de base en langage C
Les types en C
Les types en langage C se répartissent en trois familles :Les entiers
Les �ottants
Les caractères
Le type permet de dé�nir :Plage de valeurs acceptées
Famille de valeurs reçues par la variable dé�nie
Le type de la variable doit être mentionné dès la déclaration de lavariable.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 46
![Page 181: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/181.jpg)
Les types de base en langage C
Les types en C
Les types en langage C se répartissent en trois familles :Les entiers
Les �ottants
Les caractères
Le type permet de dé�nir :Plage de valeurs acceptées
Famille de valeurs reçues par la variable dé�nie
Le type de la variable doit être mentionné dès la déclaration de lavariable.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 46
![Page 182: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/182.jpg)
Les types de base en langage C
Les types en C
Les types en langage C se répartissent en trois familles :Les entiers
Les �ottants
Les caractères
Le type permet de dé�nir :Plage de valeurs acceptées
Famille de valeurs reçues par la variable dé�nie
Le type de la variable doit être mentionné dès la déclaration de lavariable.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 46
![Page 183: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/183.jpg)
Les types de base en langage C Types entier
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage CTypes entierTypes �ottantType caractère
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 47
![Page 184: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/184.jpg)
Les types de base en langage C Types entier
Types entier
Les entiers peuvent être signés (signed) ou non signés (unsigned)
Entiers signés:
les mots entre parenthèses () sont facultatifs
Le nombre d'octets alloué à une variable de type int dépend de la machine(selon le processeur)
Le codage utilisé par la machine pour les entiers signés est le complément à2
N. Alioua Chapitre 1: Langage C - introduction et notions de base 48
![Page 185: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/185.jpg)
Les types de base en langage C Types entier
Types entier
Entiers non signés:
les mots entre parenthèses () sont facultatifs
Le type le plus utilisé pour les entiers en langage C est le (signed) int.
Exemples:int x; signed int y; // déclaration de deux entiers signés
short int z; signed short t; //déclaration de deux entiers (short) signés
unsigned long int u; unsigned long v ; //déclaration de deux entiers (long)non signés
N. Alioua Chapitre 1: Langage C - introduction et notions de base 49
![Page 186: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/186.jpg)
Les types de base en langage C Types �ottant
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage CTypes entierTypes �ottantType caractère
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 50
![Page 187: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/187.jpg)
Les types de base en langage C Types �ottant
Types �ottant
Les �ottants sont utilisés pour représenter des nombres à virgule�ottante, qui correspondent à des approximations de nombres réels àdes degrés de précision di�érents.
Les �ottants peuvent s'écrire de deux façons :Notation décimale: 5.2, -3.14, -.23, 2., .025
Notation exponentielle: en utilisant la lettre e ou E (puissance de 10):1.25e5, 3E-5, .23e-14
En C, on a deux types pour le �ottants: le �oat et le double
N. Alioua Chapitre 1: Langage C - introduction et notions de base 51
![Page 188: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/188.jpg)
Les types de base en langage C Types �ottant
Types �ottant
Les �ottants sont utilisés pour représenter des nombres à virgule�ottante, qui correspondent à des approximations de nombres réels àdes degrés de précision di�érents.
Les �ottants peuvent s'écrire de deux façons :Notation décimale: 5.2, -3.14, -.23, 2., .025
Notation exponentielle: en utilisant la lettre e ou E (puissance de 10):1.25e5, 3E-5, .23e-14
En C, on a deux types pour le �ottants: le �oat et le double
N. Alioua Chapitre 1: Langage C - introduction et notions de base 51
![Page 189: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/189.jpg)
Les types de base en langage C Types �ottant
Types �ottant
Les �ottants sont utilisés pour représenter des nombres à virgule�ottante, qui correspondent à des approximations de nombres réels àdes degrés de précision di�érents.
Les �ottants peuvent s'écrire de deux façons :Notation décimale: 5.2, -3.14, -.23, 2., .025
Notation exponentielle: en utilisant la lettre e ou E (puissance de 10):1.25e5, 3E-5, .23e-14
En C, on a deux types pour le �ottants: le �oat et le double
N. Alioua Chapitre 1: Langage C - introduction et notions de base 51
![Page 190: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/190.jpg)
Les types de base en langage C Types �ottant
Types �ottant
Les nombres �ottants ne peuvent pas représenter tous les réels.Certaines approximations sont faites, puisque la majorité des nombresréels ont une expansion binaire in�nie.
Avec les �ottants, l'ordinateur ne connaît pas la virgule, il utilise lepoint.
Le codage utilisé est généralement la norme IEEE754 en simpleprécision (32 bits pour �oat) ou double précision (64 bits pour double)ou double précision étendue (79 bits pour long double)
Exemples:�oat x=1.5f;
double y=6.25;
double z=1.1e12;
Remarque: Les constantes sont créées, par défaut, par le compilateurdans le type double. Pour imposer à une constante �ottante d'être dutype �oat, on suit son écriture de la lettre F (ou f).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 52
![Page 191: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/191.jpg)
Les types de base en langage C Types �ottant
Types �ottant
Les nombres �ottants ne peuvent pas représenter tous les réels.Certaines approximations sont faites, puisque la majorité des nombresréels ont une expansion binaire in�nie.
Avec les �ottants, l'ordinateur ne connaît pas la virgule, il utilise lepoint.
Le codage utilisé est généralement la norme IEEE754 en simpleprécision (32 bits pour �oat) ou double précision (64 bits pour double)ou double précision étendue (79 bits pour long double)
Exemples:�oat x=1.5f;
double y=6.25;
double z=1.1e12;
Remarque: Les constantes sont créées, par défaut, par le compilateurdans le type double. Pour imposer à une constante �ottante d'être dutype �oat, on suit son écriture de la lettre F (ou f).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 52
![Page 192: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/192.jpg)
Les types de base en langage C Types �ottant
Types �ottant
Les nombres �ottants ne peuvent pas représenter tous les réels.Certaines approximations sont faites, puisque la majorité des nombresréels ont une expansion binaire in�nie.
Avec les �ottants, l'ordinateur ne connaît pas la virgule, il utilise lepoint.
Le codage utilisé est généralement la norme IEEE754 en simpleprécision (32 bits pour �oat) ou double précision (64 bits pour double)ou double précision étendue (79 bits pour long double)
Exemples:�oat x=1.5f;
double y=6.25;
double z=1.1e12;
Remarque: Les constantes sont créées, par défaut, par le compilateurdans le type double. Pour imposer à une constante �ottante d'être dutype �oat, on suit son écriture de la lettre F (ou f).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 52
![Page 193: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/193.jpg)
Les types de base en langage C Types �ottant
Types �ottant
Les nombres �ottants ne peuvent pas représenter tous les réels.Certaines approximations sont faites, puisque la majorité des nombresréels ont une expansion binaire in�nie.
Avec les �ottants, l'ordinateur ne connaît pas la virgule, il utilise lepoint.
Le codage utilisé est généralement la norme IEEE754 en simpleprécision (32 bits pour �oat) ou double précision (64 bits pour double)ou double précision étendue (79 bits pour long double)
Exemples:�oat x=1.5f;
double y=6.25;
double z=1.1e12;
Remarque: Les constantes sont créées, par défaut, par le compilateurdans le type double. Pour imposer à une constante �ottante d'être dutype �oat, on suit son écriture de la lettre F (ou f).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 52
![Page 194: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/194.jpg)
Les types de base en langage C Types �ottant
Types �ottant
Les nombres �ottants ne peuvent pas représenter tous les réels.Certaines approximations sont faites, puisque la majorité des nombresréels ont une expansion binaire in�nie.
Avec les �ottants, l'ordinateur ne connaît pas la virgule, il utilise lepoint.
Le codage utilisé est généralement la norme IEEE754 en simpleprécision (32 bits pour �oat) ou double précision (64 bits pour double)ou double précision étendue (79 bits pour long double)
Exemples:�oat x=1.5f;
double y=6.25;
double z=1.1e12;
Remarque: Les constantes sont créées, par défaut, par le compilateurdans le type double. Pour imposer à une constante �ottante d'être dutype �oat, on suit son écriture de la lettre F (ou f).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 52
![Page 195: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/195.jpg)
Les types de base en langage C Types �ottant
Types �ottant
Les nombres �ottants ne peuvent pas représenter tous les réels.Certaines approximations sont faites, puisque la majorité des nombresréels ont une expansion binaire in�nie.
Avec les �ottants, l'ordinateur ne connaît pas la virgule, il utilise lepoint.
Le codage utilisé est généralement la norme IEEE754 en simpleprécision (32 bits pour �oat) ou double précision (64 bits pour double)ou double précision étendue (79 bits pour long double)
Exemples:�oat x=1.5f;
double y=6.25;
double z=1.1e12;
Remarque: Les constantes sont créées, par défaut, par le compilateurdans le type double. Pour imposer à une constante �ottante d'être dutype �oat, on suit son écriture de la lettre F (ou f).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 52
![Page 196: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/196.jpg)
Les types de base en langage C Types �ottant
Types �ottant
Les nombres �ottants ne peuvent pas représenter tous les réels.Certaines approximations sont faites, puisque la majorité des nombresréels ont une expansion binaire in�nie.
Avec les �ottants, l'ordinateur ne connaît pas la virgule, il utilise lepoint.
Le codage utilisé est généralement la norme IEEE754 en simpleprécision (32 bits pour �oat) ou double précision (64 bits pour double)ou double précision étendue (79 bits pour long double)
Exemples:�oat x=1.5f;
double y=6.25;
double z=1.1e12;
Remarque: Les constantes sont créées, par défaut, par le compilateurdans le type double. Pour imposer à une constante �ottante d'être dutype �oat, on suit son écriture de la lettre F (ou f).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 52
![Page 197: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/197.jpg)
Les types de base en langage C Types �ottant
Types �ottant
Les nombres �ottants ne peuvent pas représenter tous les réels.Certaines approximations sont faites, puisque la majorité des nombresréels ont une expansion binaire in�nie.
Avec les �ottants, l'ordinateur ne connaît pas la virgule, il utilise lepoint.
Le codage utilisé est généralement la norme IEEE754 en simpleprécision (32 bits pour �oat) ou double précision (64 bits pour double)ou double précision étendue (79 bits pour long double)
Exemples:�oat x=1.5f;
double y=6.25;
double z=1.1e12;
Remarque: Les constantes sont créées, par défaut, par le compilateurdans le type double. Pour imposer à une constante �ottante d'être dutype �oat, on suit son écriture de la lettre F (ou f).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 52
![Page 198: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/198.jpg)
Les types de base en langage C Type caractère
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage CTypes entierTypes �ottantType caractère
4 Les variables et les constantes en langage C
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 53
![Page 199: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/199.jpg)
Les types de base en langage C Type caractère
Type caractère
Pour déclarer une variable de type caractère, on utilise le mot clé char.
IMPORTANT: Une constante caractère est délimité par deuxapostrophes simples ' et ', tandis qu'une constante chaine decaractère est délimité par deux guillemets " et "
Exemple:char car1='a';
char car2='*';
N. Alioua Chapitre 1: Langage C - introduction et notions de base 54
![Page 200: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/200.jpg)
Les types de base en langage C Type caractère
Type caractère
Pour déclarer une variable de type caractère, on utilise le mot clé char.
IMPORTANT: Une constante caractère est délimité par deuxapostrophes simples ' et ', tandis qu'une constante chaine decaractère est délimité par deux guillemets " et "
Exemple:char car1='a';
char car2='*';
N. Alioua Chapitre 1: Langage C - introduction et notions de base 54
![Page 201: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/201.jpg)
Les types de base en langage C Type caractère
Type caractère
Pour déclarer une variable de type caractère, on utilise le mot clé char.
IMPORTANT: Une constante caractère est délimité par deuxapostrophes simples ' et ', tandis qu'une constante chaine decaractère est délimité par deux guillemets " et "
Exemple:char car1='a';
char car2='*';
N. Alioua Chapitre 1: Langage C - introduction et notions de base 54
![Page 202: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/202.jpg)
Les types de base en langage C Type caractère
Type caractère
Pour déclarer une variable de type caractère, on utilise le mot clé char.
IMPORTANT: Une constante caractère est délimité par deuxapostrophes simples ' et ', tandis qu'une constante chaine decaractère est délimité par deux guillemets " et "
Exemple:char car1='a';
char car2='*';
N. Alioua Chapitre 1: Langage C - introduction et notions de base 54
![Page 203: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/203.jpg)
Les types de base en langage C Type caractère
Type caractère
Pour déclarer une variable de type caractère, on utilise le mot clé char.
IMPORTANT: Une constante caractère est délimité par deuxapostrophes simples ' et ', tandis qu'une constante chaine decaractère est délimité par deux guillemets " et "
Exemple:char car1='a';
char car2='*';
N. Alioua Chapitre 1: Langage C - introduction et notions de base 54
![Page 204: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/204.jpg)
Les types de base en langage C Type caractère
Caractères de contrôle
Il existe certains caractères conventionnelles en langage C qui nes'a�chent pas à l'écran mais qui permettent des actions spéciales. Onles appelle les caractères de contrôle.
Dans le code ASCII, ils ont des codes compris entre 0 et 31.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 55
![Page 205: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/205.jpg)
Les types de base en langage C Type caractère
Caractères de contrôle
Il existe certains caractères conventionnelles en langage C qui nes'a�chent pas à l'écran mais qui permettent des actions spéciales. Onles appelle les caractères de contrôle.
Dans le code ASCII, ils ont des codes compris entre 0 et 31.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 55
![Page 206: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/206.jpg)
Les types de base en langage C Type caractère
Caractères de contrôle
Explication:
Par exemple, la notation \n est une notation conventionnelle en langageC qui représente un caractère de �n de ligne
Lorsque ce caractère est envoyé à l'écran avec la fonction printf, ildéclenche le passage à la ligne suivante sur l'écran.
De manière générale, le langage C prévoit une notation de la forme \suivi d'un caractère pour un certain nombre de caractères dits decontrôle, c'est-à-dire ne possédant pas de graphisme particulier.
Remarque:Dans cette catégorie, on trouve également quelques caractères (\, ', " et ?)qui, bien que disposant d'un graphisme, jouent un rôle particulier dedélimiteur qui les empêche d'être notés de manière classique entre deuxapostrophes ' et '.
ces caractères ont besoin d'être "dé-spéci�é" pour être a�ché à l'écran: Onles fait précédé par un caractère \ pour les a�cher
N. Alioua Chapitre 1: Langage C - introduction et notions de base 56
![Page 207: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/207.jpg)
Les types de base en langage C Type caractère
Caractères de contrôle
Explication:
Par exemple, la notation \n est une notation conventionnelle en langageC qui représente un caractère de �n de ligne
Lorsque ce caractère est envoyé à l'écran avec la fonction printf, ildéclenche le passage à la ligne suivante sur l'écran.
De manière générale, le langage C prévoit une notation de la forme \suivi d'un caractère pour un certain nombre de caractères dits decontrôle, c'est-à-dire ne possédant pas de graphisme particulier.
Remarque:Dans cette catégorie, on trouve également quelques caractères (\, ', " et ?)qui, bien que disposant d'un graphisme, jouent un rôle particulier dedélimiteur qui les empêche d'être notés de manière classique entre deuxapostrophes ' et '.
ces caractères ont besoin d'être "dé-spéci�é" pour être a�ché à l'écran: Onles fait précédé par un caractère \ pour les a�cher
N. Alioua Chapitre 1: Langage C - introduction et notions de base 56
![Page 208: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/208.jpg)
Les types de base en langage C Type caractère
Caractères de contrôle
Explication:
Par exemple, la notation \n est une notation conventionnelle en langageC qui représente un caractère de �n de ligne
Lorsque ce caractère est envoyé à l'écran avec la fonction printf, ildéclenche le passage à la ligne suivante sur l'écran.
De manière générale, le langage C prévoit une notation de la forme \suivi d'un caractère pour un certain nombre de caractères dits decontrôle, c'est-à-dire ne possédant pas de graphisme particulier.
Remarque:Dans cette catégorie, on trouve également quelques caractères (\, ', " et ?)qui, bien que disposant d'un graphisme, jouent un rôle particulier dedélimiteur qui les empêche d'être notés de manière classique entre deuxapostrophes ' et '.
ces caractères ont besoin d'être "dé-spéci�é" pour être a�ché à l'écran: Onles fait précédé par un caractère \ pour les a�cher
N. Alioua Chapitre 1: Langage C - introduction et notions de base 56
![Page 209: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/209.jpg)
Les types de base en langage C Type caractère
Caractères de contrôle
Explication:
Par exemple, la notation \n est une notation conventionnelle en langageC qui représente un caractère de �n de ligne
Lorsque ce caractère est envoyé à l'écran avec la fonction printf, ildéclenche le passage à la ligne suivante sur l'écran.
De manière générale, le langage C prévoit une notation de la forme \suivi d'un caractère pour un certain nombre de caractères dits decontrôle, c'est-à-dire ne possédant pas de graphisme particulier.
Remarque:Dans cette catégorie, on trouve également quelques caractères (\, ', " et ?)qui, bien que disposant d'un graphisme, jouent un rôle particulier dedélimiteur qui les empêche d'être notés de manière classique entre deuxapostrophes ' et '.
ces caractères ont besoin d'être "dé-spéci�é" pour être a�ché à l'écran: Onles fait précédé par un caractère \ pour les a�cher
N. Alioua Chapitre 1: Langage C - introduction et notions de base 56
![Page 210: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/210.jpg)
Les types de base en langage C Type caractère
Caractères de contrôle
Explication:
Par exemple, la notation \n est une notation conventionnelle en langageC qui représente un caractère de �n de ligne
Lorsque ce caractère est envoyé à l'écran avec la fonction printf, ildéclenche le passage à la ligne suivante sur l'écran.
De manière générale, le langage C prévoit une notation de la forme \suivi d'un caractère pour un certain nombre de caractères dits decontrôle, c'est-à-dire ne possédant pas de graphisme particulier.
Remarque:Dans cette catégorie, on trouve également quelques caractères (\, ', " et ?)qui, bien que disposant d'un graphisme, jouent un rôle particulier dedélimiteur qui les empêche d'être notés de manière classique entre deuxapostrophes ' et '.
ces caractères ont besoin d'être "dé-spéci�é" pour être a�ché à l'écran: Onles fait précédé par un caractère \ pour les a�cher
N. Alioua Chapitre 1: Langage C - introduction et notions de base 56
![Page 211: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/211.jpg)
Les types de base en langage C Type caractère
Caractères de contrôle
Explication:
Par exemple, la notation \n est une notation conventionnelle en langageC qui représente un caractère de �n de ligne
Lorsque ce caractère est envoyé à l'écran avec la fonction printf, ildéclenche le passage à la ligne suivante sur l'écran.
De manière générale, le langage C prévoit une notation de la forme \suivi d'un caractère pour un certain nombre de caractères dits decontrôle, c'est-à-dire ne possédant pas de graphisme particulier.
Remarque:Dans cette catégorie, on trouve également quelques caractères (\, ', " et ?)qui, bien que disposant d'un graphisme, jouent un rôle particulier dedélimiteur qui les empêche d'être notés de manière classique entre deuxapostrophes ' et '.
ces caractères ont besoin d'être "dé-spéci�é" pour être a�ché à l'écran: Onles fait précédé par un caractère \ pour les a�cher
N. Alioua Chapitre 1: Langage C - introduction et notions de base 56
![Page 212: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/212.jpg)
Les types de base en langage C Type caractère
Types introduits en norme C99
Le type booléen nommé bool: une variable de ce type ne peut prendreque l'une des deux valeurs : true (vrai) et false (faux) ;
des types complexes nommés �oat complex, double complex et long double
complex: la constante I correspond alors à la constante mathématique i(racine de -1).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 57
![Page 213: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/213.jpg)
Les types de base en langage C Type caractère
Types introduits en norme C99
Le type booléen nommé bool: une variable de ce type ne peut prendreque l'une des deux valeurs : true (vrai) et false (faux) ;
des types complexes nommés �oat complex, double complex et long double
complex: la constante I correspond alors à la constante mathématique i(racine de -1).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 57
![Page 214: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/214.jpg)
Les variables et les constantes en langage C
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage CVariablesConstantes
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 58
![Page 215: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/215.jpg)
Les variables et les constantes en langage C Variables
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage CVariablesConstantes
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 59
![Page 216: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/216.jpg)
Les variables et les constantes en langage C Variables
Variables
Variable: petite information temporaire qu'on stocke dans la RAM.
Pourquoi est-elle appelée � variable � ? c'est une valeur qui peutchanger pendant le déroulement du programme.
Une variable possède :- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identi�cateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...
N. Alioua Chapitre 1: Langage C - introduction et notions de base 60
![Page 217: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/217.jpg)
Les variables et les constantes en langage C Variables
Variables
Variable: petite information temporaire qu'on stocke dans la RAM.
Pourquoi est-elle appelée � variable � ? c'est une valeur qui peutchanger pendant le déroulement du programme.
Une variable possède :- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identi�cateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...
N. Alioua Chapitre 1: Langage C - introduction et notions de base 60
![Page 218: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/218.jpg)
Les variables et les constantes en langage C Variables
Variables
Variable: petite information temporaire qu'on stocke dans la RAM.
Pourquoi est-elle appelée � variable � ? c'est une valeur qui peutchanger pendant le déroulement du programme.
Une variable possède :- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identi�cateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...
N. Alioua Chapitre 1: Langage C - introduction et notions de base 60
![Page 219: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/219.jpg)
Les variables et les constantes en langage C Variables
Variables
Variable: petite information temporaire qu'on stocke dans la RAM.
Pourquoi est-elle appelée � variable � ? c'est une valeur qui peutchanger pendant le déroulement du programme.
Une variable possède :- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identi�cateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...
N. Alioua Chapitre 1: Langage C - introduction et notions de base 60
![Page 220: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/220.jpg)
Les variables et les constantes en langage C Variables
Variables
Variable: petite information temporaire qu'on stocke dans la RAM.
Pourquoi est-elle appelée � variable � ? c'est une valeur qui peutchanger pendant le déroulement du programme.
Une variable possède :- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identi�cateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...
N. Alioua Chapitre 1: Langage C - introduction et notions de base 60
![Page 221: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/221.jpg)
Les variables et les constantes en langage C Variables
Variables
Variable: petite information temporaire qu'on stocke dans la RAM.
Pourquoi est-elle appelée � variable � ? c'est une valeur qui peutchanger pendant le déroulement du programme.
Une variable possède :- une valeur : c'est le nombre qu'elle stocke;
- un nom (ou identi�cateur) : c'est ce qui permet de la reconnaître.
- un type: elle peut être entier, réel, caractère, chaîne de caractères,...
N. Alioua Chapitre 1: Langage C - introduction et notions de base 60
![Page 222: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/222.jpg)
Les variables et les constantes en langage C Variables
Identi�cateur de variable
Règles pour l'identi�cateur d'une variable: (ou tout autre objet telqu'une fonction)- Sont autorisés: Lettres en minuscules, majuscules et chi�res, le caractèrespécial � _ � uniquement
- Sont interdits: tous les autres caractères y compris, les espaces et lesaccents.
- Le nom de variable doit obligatoirement commencé par une lettre.
- Il existe une di�érencie entre les majuscules et les minuscules.
- Longueur des identi�cateurs: selon la norme ANSI, on considèreuniquement les 31 premiers caractères. Donc, deux identi�cateurs quidi�èrent par leurs 31 premières lettres désigneront deux variables di�érentes
N. Alioua Chapitre 1: Langage C - introduction et notions de base 61
![Page 223: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/223.jpg)
Les variables et les constantes en langage C Variables
Identi�cateur de variable
Règles pour l'identi�cateur d'une variable: (ou tout autre objet telqu'une fonction)- Sont autorisés: Lettres en minuscules, majuscules et chi�res, le caractèrespécial � _ � uniquement
- Sont interdits: tous les autres caractères y compris, les espaces et lesaccents.
- Le nom de variable doit obligatoirement commencé par une lettre.
- Il existe une di�érencie entre les majuscules et les minuscules.
- Longueur des identi�cateurs: selon la norme ANSI, on considèreuniquement les 31 premiers caractères. Donc, deux identi�cateurs quidi�èrent par leurs 31 premières lettres désigneront deux variables di�érentes
N. Alioua Chapitre 1: Langage C - introduction et notions de base 61
![Page 224: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/224.jpg)
Les variables et les constantes en langage C Variables
Identi�cateur de variable
Règles pour l'identi�cateur d'une variable: (ou tout autre objet telqu'une fonction)- Sont autorisés: Lettres en minuscules, majuscules et chi�res, le caractèrespécial � _ � uniquement
- Sont interdits: tous les autres caractères y compris, les espaces et lesaccents.
- Le nom de variable doit obligatoirement commencé par une lettre.
- Il existe une di�érencie entre les majuscules et les minuscules.
- Longueur des identi�cateurs: selon la norme ANSI, on considèreuniquement les 31 premiers caractères. Donc, deux identi�cateurs quidi�èrent par leurs 31 premières lettres désigneront deux variables di�érentes
N. Alioua Chapitre 1: Langage C - introduction et notions de base 61
![Page 225: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/225.jpg)
Les variables et les constantes en langage C Variables
Identi�cateur de variable
Règles pour l'identi�cateur d'une variable: (ou tout autre objet telqu'une fonction)- Sont autorisés: Lettres en minuscules, majuscules et chi�res, le caractèrespécial � _ � uniquement
- Sont interdits: tous les autres caractères y compris, les espaces et lesaccents.
- Le nom de variable doit obligatoirement commencé par une lettre.
- Il existe une di�érencie entre les majuscules et les minuscules.
- Longueur des identi�cateurs: selon la norme ANSI, on considèreuniquement les 31 premiers caractères. Donc, deux identi�cateurs quidi�èrent par leurs 31 premières lettres désigneront deux variables di�érentes
N. Alioua Chapitre 1: Langage C - introduction et notions de base 61
![Page 226: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/226.jpg)
Les variables et les constantes en langage C Variables
Identi�cateur de variable
Règles pour l'identi�cateur d'une variable: (ou tout autre objet telqu'une fonction)- Sont autorisés: Lettres en minuscules, majuscules et chi�res, le caractèrespécial � _ � uniquement
- Sont interdits: tous les autres caractères y compris, les espaces et lesaccents.
- Le nom de variable doit obligatoirement commencé par une lettre.
- Il existe une di�érencie entre les majuscules et les minuscules.
- Longueur des identi�cateurs: selon la norme ANSI, on considèreuniquement les 31 premiers caractères. Donc, deux identi�cateurs quidi�èrent par leurs 31 premières lettres désigneront deux variables di�érentes
N. Alioua Chapitre 1: Langage C - introduction et notions de base 61
![Page 227: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/227.jpg)
Les variables et les constantes en langage C Variables
Identi�cateur de variable
Règles pour l'identi�cateur d'une variable: (ou tout autre objet telqu'une fonction)- Sont autorisés: Lettres en minuscules, majuscules et chi�res, le caractèrespécial � _ � uniquement
- Sont interdits: tous les autres caractères y compris, les espaces et lesaccents.
- Le nom de variable doit obligatoirement commencé par une lettre.
- Il existe une di�érencie entre les majuscules et les minuscules.
- Longueur des identi�cateurs: selon la norme ANSI, on considèreuniquement les 31 premiers caractères. Donc, deux identi�cateurs quidi�èrent par leurs 31 premières lettres désigneront deux variables di�érentes
N. Alioua Chapitre 1: Langage C - introduction et notions de base 61
![Page 228: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/228.jpg)
Les variables et les constantes en langage C Variables
Règles pour les variables
Exemples d'identi�cateursautorisés:
A1
SMIA_2019
SMIA2019
Exemples d'identi�cateurs nonautorisés:
1A
SMIA 2019
SMIA$2019
SMIA-2019
N. Alioua Chapitre 1: Langage C - introduction et notions de base 62
![Page 229: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/229.jpg)
Les variables et les constantes en langage C Variables
Règles pour les variables
Exemples d'identi�cateursautorisés:
A1
SMIA_2019
SMIA2019
Exemples d'identi�cateurs nonautorisés:
1A
SMIA 2019
SMIA$2019
SMIA-2019
Pour la lisibilité du code, il est conseillé de choisir des noms de variablesqui représentent les données qu'elles stockent.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 62
![Page 230: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/230.jpg)
Les variables et les constantes en langage C Variables
Règles pour les variables
Les mots ci-dessous ne peuvent pas être utilisés pour les identi�cateurs dulangage C. Il correspondent à des mots particuliers utilisés par le langageC.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 63
![Page 231: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/231.jpg)
Les variables et les constantes en langage C Variables
Déclaration de variables
Pour déclarer une variable, il su�t de :Indiquer le type de la variable à créer ;
Insérer un espace ;
Indiquer le nom (identi�cateur) attribué à la variable, en respectant lesrègles concernant les identi�cateurs ;
En�n, de ne pas oublier le point-virgule, indispensable pour touteinstruction en C.
Syntaxe: typeVariable nomVariable;
Exemple des cas possibles:Déclaration avec initialisation : int x=1;
Déclaration seule: double y;
Déclarations avec initialisations pour plusieurs variables de même typesur la même ligne séparées par une virgule : int a=2, b=6;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 64
![Page 232: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/232.jpg)
Les variables et les constantes en langage C Variables
Déclaration de variables
Pour déclarer une variable, il su�t de :Indiquer le type de la variable à créer ;
Insérer un espace ;
Indiquer le nom (identi�cateur) attribué à la variable, en respectant lesrègles concernant les identi�cateurs ;
En�n, de ne pas oublier le point-virgule, indispensable pour touteinstruction en C.
Syntaxe: typeVariable nomVariable;
Exemple des cas possibles:Déclaration avec initialisation : int x=1;
Déclaration seule: double y;
Déclarations avec initialisations pour plusieurs variables de même typesur la même ligne séparées par une virgule : int a=2, b=6;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 64
![Page 233: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/233.jpg)
Les variables et les constantes en langage C Variables
Déclaration de variables
Pour déclarer une variable, il su�t de :Indiquer le type de la variable à créer ;
Insérer un espace ;
Indiquer le nom (identi�cateur) attribué à la variable, en respectant lesrègles concernant les identi�cateurs ;
En�n, de ne pas oublier le point-virgule, indispensable pour touteinstruction en C.
Syntaxe: typeVariable nomVariable;
Exemple des cas possibles:Déclaration avec initialisation : int x=1;
Déclaration seule: double y;
Déclarations avec initialisations pour plusieurs variables de même typesur la même ligne séparées par une virgule : int a=2, b=6;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 64
![Page 234: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/234.jpg)
Les variables et les constantes en langage C Variables
Déclaration de variables
Pour déclarer une variable, il su�t de :Indiquer le type de la variable à créer ;
Insérer un espace ;
Indiquer le nom (identi�cateur) attribué à la variable, en respectant lesrègles concernant les identi�cateurs ;
En�n, de ne pas oublier le point-virgule, indispensable pour touteinstruction en C.
Syntaxe: typeVariable nomVariable;
Exemple des cas possibles:Déclaration avec initialisation : int x=1;
Déclaration seule: double y;
Déclarations avec initialisations pour plusieurs variables de même typesur la même ligne séparées par une virgule : int a=2, b=6;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 64
![Page 235: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/235.jpg)
Les variables et les constantes en langage C Variables
Déclaration de variables
Pour déclarer une variable, il su�t de :Indiquer le type de la variable à créer ;
Insérer un espace ;
Indiquer le nom (identi�cateur) attribué à la variable, en respectant lesrègles concernant les identi�cateurs ;
En�n, de ne pas oublier le point-virgule, indispensable pour touteinstruction en C.
Syntaxe: typeVariable nomVariable;
Exemple des cas possibles:Déclaration avec initialisation : int x=1;
Déclaration seule: double y;
Déclarations avec initialisations pour plusieurs variables de même typesur la même ligne séparées par une virgule : int a=2, b=6;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 64
![Page 236: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/236.jpg)
Les variables et les constantes en langage C Variables
Déclaration de variables
Pour déclarer une variable, il su�t de :Indiquer le type de la variable à créer ;
Insérer un espace ;
Indiquer le nom (identi�cateur) attribué à la variable, en respectant lesrègles concernant les identi�cateurs ;
En�n, de ne pas oublier le point-virgule, indispensable pour touteinstruction en C.
Syntaxe: typeVariable nomVariable;
Exemple des cas possibles:Déclaration avec initialisation : int x=1;
Déclaration seule: double y;
Déclarations avec initialisations pour plusieurs variables de même typesur la même ligne séparées par une virgule : int a=2, b=6;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 64
![Page 237: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/237.jpg)
Les variables et les constantes en langage C Variables
Déclaration de variables
Pour déclarer une variable, il su�t de :Indiquer le type de la variable à créer ;
Insérer un espace ;
Indiquer le nom (identi�cateur) attribué à la variable, en respectant lesrègles concernant les identi�cateurs ;
En�n, de ne pas oublier le point-virgule, indispensable pour touteinstruction en C.
Syntaxe: typeVariable nomVariable;
Exemple des cas possibles:Déclaration avec initialisation : int x=1;
Déclaration seule: double y;
Déclarations avec initialisations pour plusieurs variables de même typesur la même ligne séparées par une virgule : int a=2, b=6;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 64
![Page 238: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/238.jpg)
Les variables et les constantes en langage C Variables
Déclaration de variables
Pour déclarer une variable, il su�t de :Indiquer le type de la variable à créer ;
Insérer un espace ;
Indiquer le nom (identi�cateur) attribué à la variable, en respectant lesrègles concernant les identi�cateurs ;
En�n, de ne pas oublier le point-virgule, indispensable pour touteinstruction en C.
Syntaxe: typeVariable nomVariable;
Exemple des cas possibles:Déclaration avec initialisation : int x=1;
Déclaration seule: double y;
Déclarations avec initialisations pour plusieurs variables de même typesur la même ligne séparées par une virgule : int a=2, b=6;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 64
![Page 239: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/239.jpg)
Les variables et les constantes en langage C Variables
Déclaration de variables
Pour déclarer une variable, il su�t de :Indiquer le type de la variable à créer ;
Insérer un espace ;
Indiquer le nom (identi�cateur) attribué à la variable, en respectant lesrègles concernant les identi�cateurs ;
En�n, de ne pas oublier le point-virgule, indispensable pour touteinstruction en C.
Syntaxe: typeVariable nomVariable;
Exemple des cas possibles:Déclaration avec initialisation : int x=1;
Déclaration seule: double y;
Déclarations avec initialisations pour plusieurs variables de même typesur la même ligne séparées par une virgule : int a=2, b=6;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 64
![Page 240: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/240.jpg)
Les variables et les constantes en langage C Variables
Déclaration de variables
Pour déclarer une variable, il su�t de :Indiquer le type de la variable à créer ;
Insérer un espace ;
Indiquer le nom (identi�cateur) attribué à la variable, en respectant lesrègles concernant les identi�cateurs ;
En�n, de ne pas oublier le point-virgule, indispensable pour touteinstruction en C.
Syntaxe: typeVariable nomVariable;
Exemple des cas possibles:Déclaration avec initialisation : int x=1;
Déclaration seule: double y;
Déclarations avec initialisations pour plusieurs variables de même typesur la même ligne séparées par une virgule : int a=2, b=6;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 64
![Page 241: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/241.jpg)
Les variables et les constantes en langage C Variables
A�ectation d'une valeur une variable
Pour a�ecter une valeur à une variable, il su�t de :Indiquer le nom de la variable;
Un signe égal;
Puis la valeur à placer;
Terminer par un point virgule
Remarque: Il n'existe pas de valeur par défaut pour les variables enlangage C. Lors d'une déclaration sans initialisation, la variable prend lavaleur qui se trouvait là avant dans la mémoire, et cette valeur peutêtre n'importe quoi !
Il est donc toujours recommandé d'initialiser la variable dès qu'on ladéclare.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 65
![Page 242: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/242.jpg)
Les variables et les constantes en langage C Variables
A�ectation d'une valeur une variable
Pour a�ecter une valeur à une variable, il su�t de :Indiquer le nom de la variable;
Un signe égal;
Puis la valeur à placer;
Terminer par un point virgule
Remarque: Il n'existe pas de valeur par défaut pour les variables enlangage C. Lors d'une déclaration sans initialisation, la variable prend lavaleur qui se trouvait là avant dans la mémoire, et cette valeur peutêtre n'importe quoi !
Il est donc toujours recommandé d'initialiser la variable dès qu'on ladéclare.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 65
![Page 243: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/243.jpg)
Les variables et les constantes en langage C Variables
A�ectation d'une valeur une variable
Pour a�ecter une valeur à une variable, il su�t de :Indiquer le nom de la variable;
Un signe égal;
Puis la valeur à placer;
Terminer par un point virgule
Remarque: Il n'existe pas de valeur par défaut pour les variables enlangage C. Lors d'une déclaration sans initialisation, la variable prend lavaleur qui se trouvait là avant dans la mémoire, et cette valeur peutêtre n'importe quoi !
Il est donc toujours recommandé d'initialiser la variable dès qu'on ladéclare.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 65
![Page 244: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/244.jpg)
Les variables et les constantes en langage C Variables
A�ectation d'une valeur une variable
Pour a�ecter une valeur à une variable, il su�t de :Indiquer le nom de la variable;
Un signe égal;
Puis la valeur à placer;
Terminer par un point virgule
Remarque: Il n'existe pas de valeur par défaut pour les variables enlangage C. Lors d'une déclaration sans initialisation, la variable prend lavaleur qui se trouvait là avant dans la mémoire, et cette valeur peutêtre n'importe quoi !
Il est donc toujours recommandé d'initialiser la variable dès qu'on ladéclare.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 65
![Page 245: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/245.jpg)
Les variables et les constantes en langage C Variables
A�ectation d'une valeur une variable
Pour a�ecter une valeur à une variable, il su�t de :Indiquer le nom de la variable;
Un signe égal;
Puis la valeur à placer;
Terminer par un point virgule
Remarque: Il n'existe pas de valeur par défaut pour les variables enlangage C. Lors d'une déclaration sans initialisation, la variable prend lavaleur qui se trouvait là avant dans la mémoire, et cette valeur peutêtre n'importe quoi !
Il est donc toujours recommandé d'initialiser la variable dès qu'on ladéclare.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 65
![Page 246: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/246.jpg)
Les variables et les constantes en langage C Variables
A�ectation d'une valeur une variable
Pour a�ecter une valeur à une variable, il su�t de :Indiquer le nom de la variable;
Un signe égal;
Puis la valeur à placer;
Terminer par un point virgule
Remarque: Il n'existe pas de valeur par défaut pour les variables enlangage C. Lors d'une déclaration sans initialisation, la variable prend lavaleur qui se trouvait là avant dans la mémoire, et cette valeur peutêtre n'importe quoi !
Il est donc toujours recommandé d'initialiser la variable dès qu'on ladéclare.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 65
![Page 247: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/247.jpg)
Les variables et les constantes en langage C Variables
A�ectation d'une valeur une variable
Pour a�ecter une valeur à une variable, il su�t de :Indiquer le nom de la variable;
Un signe égal;
Puis la valeur à placer;
Terminer par un point virgule
Remarque: Il n'existe pas de valeur par défaut pour les variables enlangage C. Lors d'une déclaration sans initialisation, la variable prend lavaleur qui se trouvait là avant dans la mémoire, et cette valeur peutêtre n'importe quoi !
Il est donc toujours recommandé d'initialiser la variable dès qu'on ladéclare.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 65
![Page 248: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/248.jpg)
Les variables et les constantes en langage C Variables
Remarques sur les variables en langage C
Comme dans la plupart des langages actuels, les déclarations des typesdes variables sont obligatoires et doivent être regroupées, de préférence,au début du programme principal (qui correspond à la fonction main)
A partir de la norme C99, une déclaration de variable peut �gurer àn'importe quel emplacement du programme, à condition qu'elleapparaisse avant l'utilisation de cette variable.
Les variables ne possèdent pas de valeur par défaut. Il est doncnécessaire de les initialiser, c-à-d leur a�ecter une valeur, avant de lesutiliser.
Toute variable déclarée à l'intérieur d'une fonction quelconque, ycompris le programme principal (qui correspond à la fonction main), estune variable locale qui ne peut être utilisée qu'à l'intérieur de cettefonction.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 66
![Page 249: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/249.jpg)
Les variables et les constantes en langage C Variables
Remarques sur les variables en langage C
Comme dans la plupart des langages actuels, les déclarations des typesdes variables sont obligatoires et doivent être regroupées, de préférence,au début du programme principal (qui correspond à la fonction main)
A partir de la norme C99, une déclaration de variable peut �gurer àn'importe quel emplacement du programme, à condition qu'elleapparaisse avant l'utilisation de cette variable.
Les variables ne possèdent pas de valeur par défaut. Il est doncnécessaire de les initialiser, c-à-d leur a�ecter une valeur, avant de lesutiliser.
Toute variable déclarée à l'intérieur d'une fonction quelconque, ycompris le programme principal (qui correspond à la fonction main), estune variable locale qui ne peut être utilisée qu'à l'intérieur de cettefonction.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 66
![Page 250: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/250.jpg)
Les variables et les constantes en langage C Variables
Remarques sur les variables en langage C
Comme dans la plupart des langages actuels, les déclarations des typesdes variables sont obligatoires et doivent être regroupées, de préférence,au début du programme principal (qui correspond à la fonction main)
A partir de la norme C99, une déclaration de variable peut �gurer àn'importe quel emplacement du programme, à condition qu'elleapparaisse avant l'utilisation de cette variable.
Les variables ne possèdent pas de valeur par défaut. Il est doncnécessaire de les initialiser, c-à-d leur a�ecter une valeur, avant de lesutiliser.
Toute variable déclarée à l'intérieur d'une fonction quelconque, ycompris le programme principal (qui correspond à la fonction main), estune variable locale qui ne peut être utilisée qu'à l'intérieur de cettefonction.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 66
![Page 251: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/251.jpg)
Les variables et les constantes en langage C Variables
Remarques sur les variables en langage C
Comme dans la plupart des langages actuels, les déclarations des typesdes variables sont obligatoires et doivent être regroupées, de préférence,au début du programme principal (qui correspond à la fonction main)
A partir de la norme C99, une déclaration de variable peut �gurer àn'importe quel emplacement du programme, à condition qu'elleapparaisse avant l'utilisation de cette variable.
Les variables ne possèdent pas de valeur par défaut. Il est doncnécessaire de les initialiser, c-à-d leur a�ecter une valeur, avant de lesutiliser.
Toute variable déclarée à l'intérieur d'une fonction quelconque, ycompris le programme principal (qui correspond à la fonction main), estune variable locale qui ne peut être utilisée qu'à l'intérieur de cettefonction.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 66
![Page 252: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/252.jpg)
Les variables et les constantes en langage C Constantes
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage CVariablesConstantes
5 Les opérateurs en langage C
N. Alioua Chapitre 1: Langage C - introduction et notions de base 67
![Page 253: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/253.jpg)
Les variables et les constantes en langage C Constantes
Pourquoi utiliser une constante?
Dé�nir une constante revient à associer un nom symbolique bien choisià une valeur numérique qui peut être utilisée en plusieurs endroits ducode source.
Il est toujours recommandé d'écrire les noms des constantes enmajuscules pour les di�érencier des variables
Les constantes sont destinées à :augmenter la lisibilité : un nom bien choisi est plus expressif qu'une valeurnumérique
rendre le programme plus évolutif. On pourra facilement changer la valeurde la constante lors d'une prochaine compilation, sans avoir à parcourir toutle code source.
En Langage C, il existe deux façons de dé�nir des constantes :les constantes symboliques qui sont remplacées par la valeur numériqueassociée par le préprocesseur, juste avant la compilation
les variables constantes qui sont des variables protégées en écriture.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 68
![Page 254: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/254.jpg)
Les variables et les constantes en langage C Constantes
Pourquoi utiliser une constante?
Dé�nir une constante revient à associer un nom symbolique bien choisià une valeur numérique qui peut être utilisée en plusieurs endroits ducode source.
Il est toujours recommandé d'écrire les noms des constantes enmajuscules pour les di�érencier des variables
Les constantes sont destinées à :augmenter la lisibilité : un nom bien choisi est plus expressif qu'une valeurnumérique
rendre le programme plus évolutif. On pourra facilement changer la valeurde la constante lors d'une prochaine compilation, sans avoir à parcourir toutle code source.
En Langage C, il existe deux façons de dé�nir des constantes :les constantes symboliques qui sont remplacées par la valeur numériqueassociée par le préprocesseur, juste avant la compilation
les variables constantes qui sont des variables protégées en écriture.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 68
![Page 255: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/255.jpg)
Les variables et les constantes en langage C Constantes
Pourquoi utiliser une constante?
Dé�nir une constante revient à associer un nom symbolique bien choisià une valeur numérique qui peut être utilisée en plusieurs endroits ducode source.
Il est toujours recommandé d'écrire les noms des constantes enmajuscules pour les di�érencier des variables
Les constantes sont destinées à :augmenter la lisibilité : un nom bien choisi est plus expressif qu'une valeurnumérique
rendre le programme plus évolutif. On pourra facilement changer la valeurde la constante lors d'une prochaine compilation, sans avoir à parcourir toutle code source.
En Langage C, il existe deux façons de dé�nir des constantes :les constantes symboliques qui sont remplacées par la valeur numériqueassociée par le préprocesseur, juste avant la compilation
les variables constantes qui sont des variables protégées en écriture.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 68
![Page 256: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/256.jpg)
Les variables et les constantes en langage C Constantes
Pourquoi utiliser une constante?
Dé�nir une constante revient à associer un nom symbolique bien choisià une valeur numérique qui peut être utilisée en plusieurs endroits ducode source.
Il est toujours recommandé d'écrire les noms des constantes enmajuscules pour les di�érencier des variables
Les constantes sont destinées à :augmenter la lisibilité : un nom bien choisi est plus expressif qu'une valeurnumérique
rendre le programme plus évolutif. On pourra facilement changer la valeurde la constante lors d'une prochaine compilation, sans avoir à parcourir toutle code source.
En Langage C, il existe deux façons de dé�nir des constantes :les constantes symboliques qui sont remplacées par la valeur numériqueassociée par le préprocesseur, juste avant la compilation
les variables constantes qui sont des variables protégées en écriture.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 68
![Page 257: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/257.jpg)
Les variables et les constantes en langage C Constantes
Pourquoi utiliser une constante?
Dé�nir une constante revient à associer un nom symbolique bien choisià une valeur numérique qui peut être utilisée en plusieurs endroits ducode source.
Il est toujours recommandé d'écrire les noms des constantes enmajuscules pour les di�érencier des variables
Les constantes sont destinées à :augmenter la lisibilité : un nom bien choisi est plus expressif qu'une valeurnumérique
rendre le programme plus évolutif. On pourra facilement changer la valeurde la constante lors d'une prochaine compilation, sans avoir à parcourir toutle code source.
En Langage C, il existe deux façons de dé�nir des constantes :les constantes symboliques qui sont remplacées par la valeur numériqueassociée par le préprocesseur, juste avant la compilation
les variables constantes qui sont des variables protégées en écriture.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 68
![Page 258: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/258.jpg)
Les variables et les constantes en langage C Constantes
Pourquoi utiliser une constante?
Dé�nir une constante revient à associer un nom symbolique bien choisià une valeur numérique qui peut être utilisée en plusieurs endroits ducode source.
Il est toujours recommandé d'écrire les noms des constantes enmajuscules pour les di�érencier des variables
Les constantes sont destinées à :augmenter la lisibilité : un nom bien choisi est plus expressif qu'une valeurnumérique
rendre le programme plus évolutif. On pourra facilement changer la valeurde la constante lors d'une prochaine compilation, sans avoir à parcourir toutle code source.
En Langage C, il existe deux façons de dé�nir des constantes :les constantes symboliques qui sont remplacées par la valeur numériqueassociée par le préprocesseur, juste avant la compilation
les variables constantes qui sont des variables protégées en écriture.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 68
![Page 259: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/259.jpg)
Les variables et les constantes en langage C Constantes
Pourquoi utiliser une constante?
Dé�nir une constante revient à associer un nom symbolique bien choisià une valeur numérique qui peut être utilisée en plusieurs endroits ducode source.
Il est toujours recommandé d'écrire les noms des constantes enmajuscules pour les di�érencier des variables
Les constantes sont destinées à :augmenter la lisibilité : un nom bien choisi est plus expressif qu'une valeurnumérique
rendre le programme plus évolutif. On pourra facilement changer la valeurde la constante lors d'une prochaine compilation, sans avoir à parcourir toutle code source.
En Langage C, il existe deux façons de dé�nir des constantes :les constantes symboliques qui sont remplacées par la valeur numériqueassociée par le préprocesseur, juste avant la compilation
les variables constantes qui sont des variables protégées en écriture.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 68
![Page 260: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/260.jpg)
Les variables et les constantes en langage C Constantes
Pourquoi utiliser une constante?
Dé�nir une constante revient à associer un nom symbolique bien choisià une valeur numérique qui peut être utilisée en plusieurs endroits ducode source.
Il est toujours recommandé d'écrire les noms des constantes enmajuscules pour les di�érencier des variables
Les constantes sont destinées à :augmenter la lisibilité : un nom bien choisi est plus expressif qu'une valeurnumérique
rendre le programme plus évolutif. On pourra facilement changer la valeurde la constante lors d'une prochaine compilation, sans avoir à parcourir toutle code source.
En Langage C, il existe deux façons de dé�nir des constantes :les constantes symboliques qui sont remplacées par la valeur numériqueassociée par le préprocesseur, juste avant la compilation
les variables constantes qui sont des variables protégées en écriture.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 68
![Page 261: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/261.jpg)
Les variables et les constantes en langage C Constantes
Les constantes symboliques
Une constante symbolique est dé�nie par la directive #de�ne. Elle peutêtre placée : en début du �chier source ou dans un �chier en-tête .h
Il est recommandé d'écrire les constantes symboliques enMAJUSCULES : NB_ELEMENTS, PI,...
#de�ne substitue littéralement un texte à un autre avant lacompilation (le compilateur ne connaîtra donc pas le symbole).
Exemple: #de�ne PI 3.14159 demande au préprocesseur de remplacer lesymbole PI par le texte 3.14159, chaque fois que ce symbole apparaîtdans le �chier source.
Les constantes symboliques n'ont pas de type explicite et n'ont pasde place allouée en mémoire.
Notez l'absence de ; car la dé�nition d'une constante symbolique n'estpas une instruction
N. Alioua Chapitre 1: Langage C - introduction et notions de base 69
![Page 262: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/262.jpg)
Les variables et les constantes en langage C Constantes
Les constantes symboliques
Une constante symbolique est dé�nie par la directive #de�ne. Elle peutêtre placée : en début du �chier source ou dans un �chier en-tête .h
Il est recommandé d'écrire les constantes symboliques enMAJUSCULES : NB_ELEMENTS, PI,...
#de�ne substitue littéralement un texte à un autre avant lacompilation (le compilateur ne connaîtra donc pas le symbole).
Exemple: #de�ne PI 3.14159 demande au préprocesseur de remplacer lesymbole PI par le texte 3.14159, chaque fois que ce symbole apparaîtdans le �chier source.
Les constantes symboliques n'ont pas de type explicite et n'ont pasde place allouée en mémoire.
Notez l'absence de ; car la dé�nition d'une constante symbolique n'estpas une instruction
N. Alioua Chapitre 1: Langage C - introduction et notions de base 69
![Page 263: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/263.jpg)
Les variables et les constantes en langage C Constantes
Les constantes symboliques
Une constante symbolique est dé�nie par la directive #de�ne. Elle peutêtre placée : en début du �chier source ou dans un �chier en-tête .h
Il est recommandé d'écrire les constantes symboliques enMAJUSCULES : NB_ELEMENTS, PI,...
#de�ne substitue littéralement un texte à un autre avant lacompilation (le compilateur ne connaîtra donc pas le symbole).
Exemple: #de�ne PI 3.14159 demande au préprocesseur de remplacer lesymbole PI par le texte 3.14159, chaque fois que ce symbole apparaîtdans le �chier source.
Les constantes symboliques n'ont pas de type explicite et n'ont pasde place allouée en mémoire.
Notez l'absence de ; car la dé�nition d'une constante symbolique n'estpas une instruction
N. Alioua Chapitre 1: Langage C - introduction et notions de base 69
![Page 264: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/264.jpg)
Les variables et les constantes en langage C Constantes
Les constantes symboliques
Une constante symbolique est dé�nie par la directive #de�ne. Elle peutêtre placée : en début du �chier source ou dans un �chier en-tête .h
Il est recommandé d'écrire les constantes symboliques enMAJUSCULES : NB_ELEMENTS, PI,...
#de�ne substitue littéralement un texte à un autre avant lacompilation (le compilateur ne connaîtra donc pas le symbole).
Exemple: #de�ne PI 3.14159 demande au préprocesseur de remplacer lesymbole PI par le texte 3.14159, chaque fois que ce symbole apparaîtdans le �chier source.
Les constantes symboliques n'ont pas de type explicite et n'ont pasde place allouée en mémoire.
Notez l'absence de ; car la dé�nition d'une constante symbolique n'estpas une instruction
N. Alioua Chapitre 1: Langage C - introduction et notions de base 69
![Page 265: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/265.jpg)
Les variables et les constantes en langage C Constantes
Les constantes symboliques
Une constante symbolique est dé�nie par la directive #de�ne. Elle peutêtre placée : en début du �chier source ou dans un �chier en-tête .h
Il est recommandé d'écrire les constantes symboliques enMAJUSCULES : NB_ELEMENTS, PI,...
#de�ne substitue littéralement un texte à un autre avant lacompilation (le compilateur ne connaîtra donc pas le symbole).
Exemple: #de�ne PI 3.14159 demande au préprocesseur de remplacer lesymbole PI par le texte 3.14159, chaque fois que ce symbole apparaîtdans le �chier source.
Les constantes symboliques n'ont pas de type explicite et n'ont pasde place allouée en mémoire.
Notez l'absence de ; car la dé�nition d'une constante symbolique n'estpas une instruction
N. Alioua Chapitre 1: Langage C - introduction et notions de base 69
![Page 266: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/266.jpg)
Les variables et les constantes en langage C Constantes
Les constantes symboliques
Une constante symbolique est dé�nie par la directive #de�ne. Elle peutêtre placée : en début du �chier source ou dans un �chier en-tête .h
Il est recommandé d'écrire les constantes symboliques enMAJUSCULES : NB_ELEMENTS, PI,...
#de�ne substitue littéralement un texte à un autre avant lacompilation (le compilateur ne connaîtra donc pas le symbole).
Exemple: #de�ne PI 3.14159 demande au préprocesseur de remplacer lesymbole PI par le texte 3.14159, chaque fois que ce symbole apparaîtdans le �chier source.
Les constantes symboliques n'ont pas de type explicite et n'ont pasde place allouée en mémoire.
Notez l'absence de ; car la dé�nition d'une constante symbolique n'estpas une instruction
N. Alioua Chapitre 1: Langage C - introduction et notions de base 69
![Page 267: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/267.jpg)
Les variables et les constantes en langage C Constantes
Les variables constantes
Pour déclarer une constante (appelée aussi variable constante), il su�td'utiliser le mot const juste avant le type au moment de la déclarationde la variable.
Le mot réservé const permet de dé�nir une constante qui est en réalitéune variable protégée par le compilateur.
Il faut obligatoirement donner une valeur au moment de la déclarationde la constante. Aucun changement de la valeur de la constante n'estpermis après son initialisation.
La constante PI peut ainsi être dé�nie par : const �oat PI = 3.14159f;
Le compilateur véri�e que la variable n'est pas modi�ée dans le code,ce qui est particulièrement intéressant en cas d'appel de fonction avecpassage de paramètre par adresse.
Contrairement au cas des constantes symboliques, une place enmémoire est allouée par le compilateur pour la constante dé�nie parconst.N. Alioua Chapitre 1: Langage C - introduction et notions de base 70
![Page 268: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/268.jpg)
Les variables et les constantes en langage C Constantes
Les variables constantes
Pour déclarer une constante (appelée aussi variable constante), il su�td'utiliser le mot const juste avant le type au moment de la déclarationde la variable.
Le mot réservé const permet de dé�nir une constante qui est en réalitéune variable protégée par le compilateur.
Il faut obligatoirement donner une valeur au moment de la déclarationde la constante. Aucun changement de la valeur de la constante n'estpermis après son initialisation.
La constante PI peut ainsi être dé�nie par : const �oat PI = 3.14159f;
Le compilateur véri�e que la variable n'est pas modi�ée dans le code,ce qui est particulièrement intéressant en cas d'appel de fonction avecpassage de paramètre par adresse.
Contrairement au cas des constantes symboliques, une place enmémoire est allouée par le compilateur pour la constante dé�nie parconst.N. Alioua Chapitre 1: Langage C - introduction et notions de base 70
![Page 269: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/269.jpg)
Les variables et les constantes en langage C Constantes
Les variables constantes
Pour déclarer une constante (appelée aussi variable constante), il su�td'utiliser le mot const juste avant le type au moment de la déclarationde la variable.
Le mot réservé const permet de dé�nir une constante qui est en réalitéune variable protégée par le compilateur.
Il faut obligatoirement donner une valeur au moment de la déclarationde la constante. Aucun changement de la valeur de la constante n'estpermis après son initialisation.
La constante PI peut ainsi être dé�nie par : const �oat PI = 3.14159f;
Le compilateur véri�e que la variable n'est pas modi�ée dans le code,ce qui est particulièrement intéressant en cas d'appel de fonction avecpassage de paramètre par adresse.
Contrairement au cas des constantes symboliques, une place enmémoire est allouée par le compilateur pour la constante dé�nie parconst.N. Alioua Chapitre 1: Langage C - introduction et notions de base 70
![Page 270: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/270.jpg)
Les variables et les constantes en langage C Constantes
Les variables constantes
Pour déclarer une constante (appelée aussi variable constante), il su�td'utiliser le mot const juste avant le type au moment de la déclarationde la variable.
Le mot réservé const permet de dé�nir une constante qui est en réalitéune variable protégée par le compilateur.
Il faut obligatoirement donner une valeur au moment de la déclarationde la constante. Aucun changement de la valeur de la constante n'estpermis après son initialisation.
La constante PI peut ainsi être dé�nie par : const �oat PI = 3.14159f;
Le compilateur véri�e que la variable n'est pas modi�ée dans le code,ce qui est particulièrement intéressant en cas d'appel de fonction avecpassage de paramètre par adresse.
Contrairement au cas des constantes symboliques, une place enmémoire est allouée par le compilateur pour la constante dé�nie parconst.N. Alioua Chapitre 1: Langage C - introduction et notions de base 70
![Page 271: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/271.jpg)
Les variables et les constantes en langage C Constantes
Les variables constantes
Pour déclarer une constante (appelée aussi variable constante), il su�td'utiliser le mot const juste avant le type au moment de la déclarationde la variable.
Le mot réservé const permet de dé�nir une constante qui est en réalitéune variable protégée par le compilateur.
Il faut obligatoirement donner une valeur au moment de la déclarationde la constante. Aucun changement de la valeur de la constante n'estpermis après son initialisation.
La constante PI peut ainsi être dé�nie par : const �oat PI = 3.14159f;
Le compilateur véri�e que la variable n'est pas modi�ée dans le code,ce qui est particulièrement intéressant en cas d'appel de fonction avecpassage de paramètre par adresse.
Contrairement au cas des constantes symboliques, une place enmémoire est allouée par le compilateur pour la constante dé�nie parconst.N. Alioua Chapitre 1: Langage C - introduction et notions de base 70
![Page 272: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/272.jpg)
Les variables et les constantes en langage C Constantes
Les variables constantes
Pour déclarer une constante (appelée aussi variable constante), il su�td'utiliser le mot const juste avant le type au moment de la déclarationde la variable.
Le mot réservé const permet de dé�nir une constante qui est en réalitéune variable protégée par le compilateur.
Il faut obligatoirement donner une valeur au moment de la déclarationde la constante. Aucun changement de la valeur de la constante n'estpermis après son initialisation.
La constante PI peut ainsi être dé�nie par : const �oat PI = 3.14159f;
Le compilateur véri�e que la variable n'est pas modi�ée dans le code,ce qui est particulièrement intéressant en cas d'appel de fonction avecpassage de paramètre par adresse.
Contrairement au cas des constantes symboliques, une place enmémoire est allouée par le compilateur pour la constante dé�nie parconst.N. Alioua Chapitre 1: Langage C - introduction et notions de base 70
![Page 273: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/273.jpg)
Les opérateurs en langage C
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage COpérateurs arithmétiquesOpérateurs relationnelsOpérateur d'a�ectationOpérateurs logiquesAutres Opérateurs
N. Alioua Chapitre 1: Langage C - introduction et notions de base 71
![Page 274: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/274.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage COpérateurs arithmétiquesOpérateurs relationnelsOpérateur d'a�ectationOpérateurs logiquesAutres Opérateurs
N. Alioua Chapitre 1: Langage C - introduction et notions de base 72
![Page 275: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/275.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Les opérateurs arithmétiques en langage C
Les opérateurs arithmétiques sont des opérateurs binaires dé�nis, engénéral, pour deux opérandes de même type et fournissent un résultatde même type.
Remarque importante:Pour la division (/), le quotient de deux entiers donne un entier (5/2=2) etcelui de deux �ottants donne un �ottant (5.0/2.0=2.5)
Le modulo (%) ne porte que sur des entiers, il fournit le reste de la divisionde son premier opérande par son second (5%2=1).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 73
![Page 276: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/276.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Les opérateurs arithmétiques en langage C
Les opérateurs arithmétiques sont des opérateurs binaires dé�nis, engénéral, pour deux opérandes de même type et fournissent un résultatde même type.
Remarque importante:Pour la division (/), le quotient de deux entiers donne un entier (5/2=2) etcelui de deux �ottants donne un �ottant (5.0/2.0=2.5)
Le modulo (%) ne porte que sur des entiers, il fournit le reste de la divisionde son premier opérande par son second (5%2=1).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 73
![Page 277: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/277.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Les opérateurs arithmétiques en langage C
Les opérateurs arithmétiques sont des opérateurs binaires dé�nis, engénéral, pour deux opérandes de même type et fournissent un résultatde même type.
Remarque importante:Pour la division (/), le quotient de deux entiers donne un entier (5/2=2) etcelui de deux �ottants donne un �ottant (5.0/2.0=2.5)
Le modulo (%) ne porte que sur des entiers, il fournit le reste de la divisionde son premier opérande par son second (5%2=1).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 73
![Page 278: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/278.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Les opérateurs arithmétiques en langage C
Les opérateurs arithmétiques sont des opérateurs binaires dé�nis, engénéral, pour deux opérandes de même type et fournissent un résultatde même type.
Remarque importante:Pour la division (/), le quotient de deux entiers donne un entier (5/2=2) etcelui de deux �ottants donne un �ottant (5.0/2.0=2.5)
Le modulo (%) ne porte que sur des entiers, il fournit le reste de la divisionde son premier opérande par son second (5%2=1).
N. Alioua Chapitre 1: Langage C - introduction et notions de base 73
![Page 279: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/279.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Ordre de priorité
L'ordre de priorité des opérateurs arithmétiques , du plus prioritaire aumoins prioritaire:- * et /: multiplication et division
- %: modulo
- + et -: addition et soustraction
Exemple: 2 + 3 * 7 = 23
En cas de besoin (ou de doute), on utilise les parenthèses pour indiquerles opérations à e�ectuer en priorité.
Exemple: (2 + 3) * 7 vaut 35
Remarque: le langage C ne dispose pas d'opérateur de puissance. Oncalcule la puissance soit par des multiplications successives, soit avec lafonction power de la bibliothèque standard stdlib.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 74
![Page 280: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/280.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Ordre de priorité
L'ordre de priorité des opérateurs arithmétiques , du plus prioritaire aumoins prioritaire:- * et /: multiplication et division
- %: modulo
- + et -: addition et soustraction
Exemple: 2 + 3 * 7 = 23
En cas de besoin (ou de doute), on utilise les parenthèses pour indiquerles opérations à e�ectuer en priorité.
Exemple: (2 + 3) * 7 vaut 35
Remarque: le langage C ne dispose pas d'opérateur de puissance. Oncalcule la puissance soit par des multiplications successives, soit avec lafonction power de la bibliothèque standard stdlib.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 74
![Page 281: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/281.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Ordre de priorité
L'ordre de priorité des opérateurs arithmétiques , du plus prioritaire aumoins prioritaire:- * et /: multiplication et division
- %: modulo
- + et -: addition et soustraction
Exemple: 2 + 3 * 7 = 23
En cas de besoin (ou de doute), on utilise les parenthèses pour indiquerles opérations à e�ectuer en priorité.
Exemple: (2 + 3) * 7 vaut 35
Remarque: le langage C ne dispose pas d'opérateur de puissance. Oncalcule la puissance soit par des multiplications successives, soit avec lafonction power de la bibliothèque standard stdlib.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 74
![Page 282: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/282.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Placer les parenthèses pour exprimer l'ordre de priorité de cesopérations:a + b * c
a * b + c % d
- c % d
- a + c % d
- a / - b + c
- a / - ( b + c )
N. Alioua Chapitre 1: Langage C - introduction et notions de base 75
![Page 283: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/283.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Placer les parenthèses pour exprimer l'ordre de priorité de cesopérations:a + b * c
a * b + c % d
- c % d
- a + c % d
- a / - b + c
- a / - ( b + c )
N. Alioua Chapitre 1: Langage C - introduction et notions de base 75
![Page 284: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/284.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Placer les parenthèses pour exprimer l'ordre de priorité de cesopérations:a + b * c ⇒ a + ( b * c )
a * b + c % d
- c % d
- a + c % d
- a / - b + c
- a / - ( b + c )
N. Alioua Chapitre 1: Langage C - introduction et notions de base 75
![Page 285: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/285.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Placer les parenthèses pour exprimer l'ordre de priorité de cesopérations:a + b * c ⇒ a + ( b * c )
a * b + c % d ⇒ ( a * b ) + ( c % d )
- c % d
- a + c % d
- a / - b + c
- a / - ( b + c )
N. Alioua Chapitre 1: Langage C - introduction et notions de base 75
![Page 286: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/286.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Placer les parenthèses pour exprimer l'ordre de priorité de cesopérations:a + b * c ⇒ a + ( b * c )
a * b + c % d ⇒ ( a * b ) + ( c % d )
- c % d ⇒ ( - c ) % d
- a + c % d
- a / - b + c
- a / - ( b + c )
N. Alioua Chapitre 1: Langage C - introduction et notions de base 75
![Page 287: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/287.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Placer les parenthèses pour exprimer l'ordre de priorité de cesopérations:a + b * c ⇒ a + ( b * c )
a * b + c % d ⇒ ( a * b ) + ( c % d )
- c % d ⇒ ( - c ) % d
- a + c % d ⇒ ( - a ) + ( c % d )
- a / - b + c
- a / - ( b + c )
N. Alioua Chapitre 1: Langage C - introduction et notions de base 75
![Page 288: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/288.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Placer les parenthèses pour exprimer l'ordre de priorité de cesopérations:a + b * c ⇒ a + ( b * c )
a * b + c % d ⇒ ( a * b ) + ( c % d )
- c % d ⇒ ( - c ) % d
- a + c % d ⇒ ( - a ) + ( c % d )
- a / - b + c ⇒ ( ( - a ) / ( - b ) ) + c
- a / - ( b + c )
N. Alioua Chapitre 1: Langage C - introduction et notions de base 75
![Page 289: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/289.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Placer les parenthèses pour exprimer l'ordre de priorité de cesopérations:a + b * c ⇒ a + ( b * c )
a * b + c % d ⇒ ( a * b ) + ( c % d )
- c % d ⇒ ( - c ) % d
- a + c % d ⇒ ( - a ) + ( c % d )
- a / - b + c ⇒ ( ( - a ) / ( - b ) ) + c
- a / - ( b + c ) ⇒( - a ) / ( - ( b + c ) )
N. Alioua Chapitre 1: Langage C - introduction et notions de base 75
![Page 290: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/290.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateurs arithmétiques et conversion de type
Les opérateurs arithmétiques peuvent porter sur des opérandes de typesdi�érents.
Un mécanisme de conversion est alors mis en place par le compilateur:
Règles de conversion automatique de type pour les opérateursbinaires:
(1) Deux entiers:
Tout d'abord, les types char et short sont convertis en int, on appelle cetteétape la promotion numérique.
Ensuite, le plus large des deux types est choisi selon l'ordre suivant. on appellecette étape la conversion d'ajustement de type: int, unsigned int, long, unsignedlong. (int est le plus faible et unsigned long le plus large)
(2) Un entier et un �ottant: Le type entier est converti dans le type durationnel.
(3) Deux �ottants: le plus large des deux types est choisi selon l'ordre suivant:�oat, double, long double. (�oat est le plus faible et long double le plus large)
N. Alioua Chapitre 1: Langage C - introduction et notions de base 76
![Page 291: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/291.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateurs arithmétiques et conversion de type
Les opérateurs arithmétiques peuvent porter sur des opérandes de typesdi�érents.
Un mécanisme de conversion est alors mis en place par le compilateur:
Règles de conversion automatique de type pour les opérateursbinaires:
(1) Deux entiers:
Tout d'abord, les types char et short sont convertis en int, on appelle cetteétape la promotion numérique.
Ensuite, le plus large des deux types est choisi selon l'ordre suivant. on appellecette étape la conversion d'ajustement de type: int, unsigned int, long, unsignedlong. (int est le plus faible et unsigned long le plus large)
(2) Un entier et un �ottant: Le type entier est converti dans le type durationnel.
(3) Deux �ottants: le plus large des deux types est choisi selon l'ordre suivant:�oat, double, long double. (�oat est le plus faible et long double le plus large)
N. Alioua Chapitre 1: Langage C - introduction et notions de base 76
![Page 292: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/292.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateurs arithmétiques et conversion de type
Les opérateurs arithmétiques peuvent porter sur des opérandes de typesdi�érents.
Un mécanisme de conversion est alors mis en place par le compilateur:
Règles de conversion automatique de type pour les opérateursbinaires:
(1) Deux entiers:
Tout d'abord, les types char et short sont convertis en int, on appelle cetteétape la promotion numérique.
Ensuite, le plus large des deux types est choisi selon l'ordre suivant. on appellecette étape la conversion d'ajustement de type: int, unsigned int, long, unsignedlong. (int est le plus faible et unsigned long le plus large)
(2) Un entier et un �ottant: Le type entier est converti dans le type durationnel.
(3) Deux �ottants: le plus large des deux types est choisi selon l'ordre suivant:�oat, double, long double. (�oat est le plus faible et long double le plus large)
N. Alioua Chapitre 1: Langage C - introduction et notions de base 76
![Page 293: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/293.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateurs arithmétiques et conversion de type
Les opérateurs arithmétiques peuvent porter sur des opérandes de typesdi�érents.
Un mécanisme de conversion est alors mis en place par le compilateur:
Règles de conversion automatique de type pour les opérateursbinaires:
(1) Deux entiers:
Tout d'abord, les types char et short sont convertis en int, on appelle cetteétape la promotion numérique.
Ensuite, le plus large des deux types est choisi selon l'ordre suivant. on appellecette étape la conversion d'ajustement de type: int, unsigned int, long, unsignedlong. (int est le plus faible et unsigned long le plus large)
(2) Un entier et un �ottant: Le type entier est converti dans le type durationnel.
(3) Deux �ottants: le plus large des deux types est choisi selon l'ordre suivant:�oat, double, long double. (�oat est le plus faible et long double le plus large)
N. Alioua Chapitre 1: Langage C - introduction et notions de base 76
![Page 294: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/294.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateurs arithmétiques et conversion de type
Les opérateurs arithmétiques peuvent porter sur des opérandes de typesdi�érents.
Un mécanisme de conversion est alors mis en place par le compilateur:
Règles de conversion automatique de type pour les opérateursbinaires:
(1) Deux entiers:
Tout d'abord, les types char et short sont convertis en int, on appelle cetteétape la promotion numérique.
Ensuite, le plus large des deux types est choisi selon l'ordre suivant. on appellecette étape la conversion d'ajustement de type: int, unsigned int, long, unsignedlong. (int est le plus faible et unsigned long le plus large)
(2) Un entier et un �ottant: Le type entier est converti dans le type durationnel.
(3) Deux �ottants: le plus large des deux types est choisi selon l'ordre suivant:�oat, double, long double. (�oat est le plus faible et long double le plus large)
N. Alioua Chapitre 1: Langage C - introduction et notions de base 76
![Page 295: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/295.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateurs arithmétiques et conversion de type
Les opérateurs arithmétiques peuvent porter sur des opérandes de typesdi�érents.
Un mécanisme de conversion est alors mis en place par le compilateur:
Règles de conversion automatique de type pour les opérateursbinaires:
(1) Deux entiers:
Tout d'abord, les types char et short sont convertis en int, on appelle cetteétape la promotion numérique.
Ensuite, le plus large des deux types est choisi selon l'ordre suivant. on appellecette étape la conversion d'ajustement de type: int, unsigned int, long, unsignedlong. (int est le plus faible et unsigned long le plus large)
(2) Un entier et un �ottant: Le type entier est converti dans le type durationnel.
(3) Deux �ottants: le plus large des deux types est choisi selon l'ordre suivant:�oat, double, long double. (�oat est le plus faible et long double le plus large)
N. Alioua Chapitre 1: Langage C - introduction et notions de base 76
![Page 296: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/296.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateurs arithmétiques et conversion de type
Les opérateurs arithmétiques peuvent porter sur des opérandes de typesdi�érents.
Un mécanisme de conversion est alors mis en place par le compilateur:
Règles de conversion automatique de type pour les opérateursbinaires:
(1) Deux entiers:
Tout d'abord, les types char et short sont convertis en int, on appelle cetteétape la promotion numérique.
Ensuite, le plus large des deux types est choisi selon l'ordre suivant. on appellecette étape la conversion d'ajustement de type: int, unsigned int, long, unsignedlong. (int est le plus faible et unsigned long le plus large)
(2) Un entier et un �ottant: Le type entier est converti dans le type durationnel.
(3) Deux �ottants: le plus large des deux types est choisi selon l'ordre suivant:�oat, double, long double. (�oat est le plus faible et long double le plus large)
N. Alioua Chapitre 1: Langage C - introduction et notions de base 76
![Page 297: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/297.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateurs arithmétiques et conversion de type
Les opérateurs arithmétiques peuvent porter sur des opérandes de typesdi�érents.
Un mécanisme de conversion est alors mis en place par le compilateur:
Règles de conversion automatique de type pour les opérateursbinaires:
(1) Deux entiers:
Tout d'abord, les types char et short sont convertis en int, on appelle cetteétape la promotion numérique.
Ensuite, le plus large des deux types est choisi selon l'ordre suivant. on appellecette étape la conversion d'ajustement de type: int, unsigned int, long, unsignedlong. (int est le plus faible et unsigned long le plus large)
(2) Un entier et un �ottant: Le type entier est converti dans le type durationnel.
(3) Deux �ottants: le plus large des deux types est choisi selon l'ordre suivant:�oat, double, long double. (�oat est le plus faible et long double le plus large)
N. Alioua Chapitre 1: Langage C - introduction et notions de base 76
![Page 298: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/298.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Remarques:
Les opérateurs numériques ne sont pas dé�nis pour les types char etshort, c'est pour cette raison qu'ils sont convertit en int par la biais dela promotion numérique.
La promotion numérique est aussi appelée conversion systématique, carelle est réalisée avant d'appliquer les règles de conversion d'ajustementde type
Les conversions d'ajustement de type considèrent les deux opérandesd'un seul opérateur à la fois (selon l'ordre de priorité) et non pasl'expression de façon globale
N. Alioua Chapitre 1: Langage C - introduction et notions de base 77
![Page 299: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/299.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Remarques:
Les opérateurs numériques ne sont pas dé�nis pour les types char etshort, c'est pour cette raison qu'ils sont convertit en int par la biais dela promotion numérique.
La promotion numérique est aussi appelée conversion systématique, carelle est réalisée avant d'appliquer les règles de conversion d'ajustementde type
Les conversions d'ajustement de type considèrent les deux opérandesd'un seul opérateur à la fois (selon l'ordre de priorité) et non pasl'expression de façon globale
N. Alioua Chapitre 1: Langage C - introduction et notions de base 77
![Page 300: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/300.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Remarques:
Les opérateurs numériques ne sont pas dé�nis pour les types char etshort, c'est pour cette raison qu'ils sont convertit en int par la biais dela promotion numérique.
La promotion numérique est aussi appelée conversion systématique, carelle est réalisée avant d'appliquer les règles de conversion d'ajustementde type
Les conversions d'ajustement de type considèrent les deux opérandesd'un seul opérateur à la fois (selon l'ordre de priorité) et non pasl'expression de façon globale
N. Alioua Chapitre 1: Langage C - introduction et notions de base 77
![Page 301: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/301.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 1
Si c1, c2 sont de type char et n de type int, les expressions suivantesauront quels types et selon quels schémas?:1. c1 + n
2. c1 + 1
3. c1− c2
N. Alioua Chapitre 1: Langage C - introduction et notions de base 78
![Page 302: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/302.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 1
Si c1, c2 sont de type char et n de type int, les expressions suivantesauront quels types et selon quels schémas?:1. c1 + n
2. c1 + 1
3. c1− c2
N. Alioua Chapitre 1: Langage C - introduction et notions de base 78
![Page 303: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/303.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 1
Si c1, c2 sont de type char et n de type int, les expressions suivantesauront quels types et selon quels schémas?:1. c1 + n
2. c1 + 1
3. c1− c2
N. Alioua Chapitre 1: Langage C - introduction et notions de base 78
![Page 304: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/304.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 1
Si c1, c2 sont de type char et n de type int, les expressions suivantesauront quels types et selon quels schémas?:1. c1 + n
2. c1 + 1
3. c1− c2
N. Alioua Chapitre 1: Langage C - introduction et notions de base 78
![Page 305: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/305.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 1
Si c1, c2 sont de type char et n de type int, les expressions suivantesauront quels types et selon quels schémas?:1. c1 + n
2. c1 + 1
3. c1− c2
N. Alioua Chapitre 1: Langage C - introduction et notions de base 78
![Page 306: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/306.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 2
Si n est de type int, p de type long et x de type �oat, l'expression :n ∗ p+ x aura quel type et selon quel schéma?
N. Alioua Chapitre 1: Langage C - introduction et notions de base 79
![Page 307: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/307.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 2
Si n est de type int, p de type long et x de type �oat, l'expression :n ∗ p+ x aura quel type et selon quel schéma?
N. Alioua Chapitre 1: Langage C - introduction et notions de base 79
![Page 308: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/308.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 3
Si p1, p2 et p3 sont de type short et x de type �oat, l'expression :p1 ∗ p2 + p3 ∗ x aura quel type et selon quel schéma?
N. Alioua Chapitre 1: Langage C - introduction et notions de base 80
![Page 309: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/309.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 3
Si p1, p2 et p3 sont de type short et x de type �oat, l'expression :p1 ∗ p2 + p3 ∗ x aura quel type et selon quel schéma?
N. Alioua Chapitre 1: Langage C - introduction et notions de base 80
![Page 310: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/310.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 4
Si on a les variables suivantes:int x=10, y=5;
double a=5.3, b=7.8;
char c='e', d='f';
Quelles valeurs sont données par les a�ectations suivantes:x=a+b;
y=2*x;
a=b/2;
c=c+1;
d=d-1;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 81
![Page 311: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/311.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 4
Si on a les variables suivantes:int x=10, y=5;
double a=5.3, b=7.8;
char c='e', d='f';
Quelles valeurs sont données par les a�ectations suivantes:x=a+b;
y=2*x;
a=b/2;
c=c+1;
d=d-1;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 81
![Page 312: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/312.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 4
Si on a les variables suivantes:int x=10, y=5;
double a=5.3, b=7.8;
char c='e', d='f';
Quelles valeurs sont données par les a�ectations suivantes:x=a+b; ⇒x: 13
y=2*x;
a=b/2;
c=c+1;
d=d-1;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 81
![Page 313: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/313.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 4
Si on a les variables suivantes:int x=10, y=5;
double a=5.3, b=7.8;
char c='e', d='f';
Quelles valeurs sont données par les a�ectations suivantes:x=a+b; ⇒x: 13
y=2*x; ⇒y: 26
a=b/2;
c=c+1;
d=d-1;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 81
![Page 314: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/314.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 4
Si on a les variables suivantes:int x=10, y=5;
double a=5.3, b=7.8;
char c='e', d='f';
Quelles valeurs sont données par les a�ectations suivantes:x=a+b; ⇒x: 13
y=2*x; ⇒y: 26
a=b/2; ⇒a: 3.9
c=c+1;
d=d-1;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 81
![Page 315: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/315.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 4
Si on a les variables suivantes:int x=10, y=5;
double a=5.3, b=7.8;
char c='e', d='f';
Quelles valeurs sont données par les a�ectations suivantes:x=a+b; ⇒x: 13
y=2*x; ⇒y: 26
a=b/2; ⇒a: 3.9
c=c+1; ⇒c: 'f' ou le code 102
d=d-1;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 81
![Page 316: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/316.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice 4
Si on a les variables suivantes:int x=10, y=5;
double a=5.3, b=7.8;
char c='e', d='f';
Quelles valeurs sont données par les a�ectations suivantes:x=a+b; ⇒x: 13
y=2*x; ⇒y: 26
a=b/2; ⇒a: 3.9
c=c+1; ⇒c: 'f' ou le code 102
d=d-1; ⇒d: 'e' ou le code 101
N. Alioua Chapitre 1: Langage C - introduction et notions de base 81
![Page 317: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/317.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis d'incrémentation
L'opérateur d'incrémentation est : � ++ �
L'expression nombre++; est équivalente à l'expression nombre = nombre + 1;
On a deux types d'incrémentation :- Postincrémentation: nombre++;
- Préincrémentation: ++nombre;
Exemples:x=i++; // équivalent à x=i; i=i+1;
x=++i; //équivalent à i=i+1; x=i;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 82
![Page 318: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/318.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis d'incrémentation
L'opérateur d'incrémentation est : � ++ �
L'expression nombre++; est équivalente à l'expression nombre = nombre + 1;
On a deux types d'incrémentation :- Postincrémentation: nombre++;
- Préincrémentation: ++nombre;
Exemples:x=i++; // équivalent à x=i; i=i+1;
x=++i; //équivalent à i=i+1; x=i;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 82
![Page 319: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/319.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis d'incrémentation
L'opérateur d'incrémentation est : � ++ �
L'expression nombre++; est équivalente à l'expression nombre = nombre + 1;
On a deux types d'incrémentation :- Postincrémentation: nombre++;
- Préincrémentation: ++nombre;
Exemples:x=i++; // équivalent à x=i; i=i+1;
x=++i; //équivalent à i=i+1; x=i;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 82
![Page 320: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/320.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis d'incrémentation
L'opérateur d'incrémentation est : � ++ �
L'expression nombre++; est équivalente à l'expression nombre = nombre + 1;
On a deux types d'incrémentation :- Postincrémentation: nombre++;
- Préincrémentation: ++nombre;
Exemples:x=i++; // équivalent à x=i; i=i+1;
x=++i; //équivalent à i=i+1; x=i;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 82
![Page 321: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/321.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis d'incrémentation
L'opérateur d'incrémentation est : � ++ �
L'expression nombre++; est équivalente à l'expression nombre = nombre + 1;
On a deux types d'incrémentation :- Postincrémentation: nombre++;
- Préincrémentation: ++nombre;
Exemples:x=i++; // équivalent à x=i; i=i+1;
x=++i; //équivalent à i=i+1; x=i;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 82
![Page 322: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/322.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis d'incrémentation
L'opérateur d'incrémentation est : � ++ �
L'expression nombre++; est équivalente à l'expression nombre = nombre + 1;
On a deux types d'incrémentation :- Postincrémentation: nombre++;
- Préincrémentation: ++nombre;
Exemples:x=i++; // équivalent à x=i; i=i+1;
x=++i; //équivalent à i=i+1; x=i;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 82
![Page 323: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/323.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis de décrémentation
L'opérateur de décrémentation est : � - - �
L'expression nombre- -; est équivalente à l'expression nombre = nombre - 1;
On a deux types d'incrémentation :- Postdécrémentation: nombre- -;
- Prédécrémentation: - -nombre;
Exemples:x=i- -; // équivalent à x=i; i=i-1;
x=- -i; // équivalent à i=i-1; x=i;
Remarque: Les opérateurs d'incrémentation et de décrémentation ontune priorité plus élevée que celle des opérateurs arithmétiques,relationnelles et logiques
N. Alioua Chapitre 1: Langage C - introduction et notions de base 83
![Page 324: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/324.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis de décrémentation
L'opérateur de décrémentation est : � - - �
L'expression nombre- -; est équivalente à l'expression nombre = nombre - 1;
On a deux types d'incrémentation :- Postdécrémentation: nombre- -;
- Prédécrémentation: - -nombre;
Exemples:x=i- -; // équivalent à x=i; i=i-1;
x=- -i; // équivalent à i=i-1; x=i;
Remarque: Les opérateurs d'incrémentation et de décrémentation ontune priorité plus élevée que celle des opérateurs arithmétiques,relationnelles et logiques
N. Alioua Chapitre 1: Langage C - introduction et notions de base 83
![Page 325: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/325.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis de décrémentation
L'opérateur de décrémentation est : � - - �
L'expression nombre- -; est équivalente à l'expression nombre = nombre - 1;
On a deux types d'incrémentation :- Postdécrémentation: nombre- -;
- Prédécrémentation: - -nombre;
Exemples:x=i- -; // équivalent à x=i; i=i-1;
x=- -i; // équivalent à i=i-1; x=i;
Remarque: Les opérateurs d'incrémentation et de décrémentation ontune priorité plus élevée que celle des opérateurs arithmétiques,relationnelles et logiques
N. Alioua Chapitre 1: Langage C - introduction et notions de base 83
![Page 326: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/326.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis de décrémentation
L'opérateur de décrémentation est : � - - �
L'expression nombre- -; est équivalente à l'expression nombre = nombre - 1;
On a deux types d'incrémentation :- Postdécrémentation: nombre- -;
- Prédécrémentation: - -nombre;
Exemples:x=i- -; // équivalent à x=i; i=i-1;
x=- -i; // équivalent à i=i-1; x=i;
Remarque: Les opérateurs d'incrémentation et de décrémentation ontune priorité plus élevée que celle des opérateurs arithmétiques,relationnelles et logiques
N. Alioua Chapitre 1: Langage C - introduction et notions de base 83
![Page 327: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/327.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis de décrémentation
L'opérateur de décrémentation est : � - - �
L'expression nombre- -; est équivalente à l'expression nombre = nombre - 1;
On a deux types d'incrémentation :- Postdécrémentation: nombre- -;
- Prédécrémentation: - -nombre;
Exemples:x=i- -; // équivalent à x=i; i=i-1;
x=- -i; // équivalent à i=i-1; x=i;
Remarque: Les opérateurs d'incrémentation et de décrémentation ontune priorité plus élevée que celle des opérateurs arithmétiques,relationnelles et logiques
N. Alioua Chapitre 1: Langage C - introduction et notions de base 83
![Page 328: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/328.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis de décrémentation
L'opérateur de décrémentation est : � - - �
L'expression nombre- -; est équivalente à l'expression nombre = nombre - 1;
On a deux types d'incrémentation :- Postdécrémentation: nombre- -;
- Prédécrémentation: - -nombre;
Exemples:x=i- -; // équivalent à x=i; i=i-1;
x=- -i; // équivalent à i=i-1; x=i;
Remarque: Les opérateurs d'incrémentation et de décrémentation ontune priorité plus élevée que celle des opérateurs arithmétiques,relationnelles et logiques
N. Alioua Chapitre 1: Langage C - introduction et notions de base 83
![Page 329: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/329.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Opérateur raccourcis de décrémentation
L'opérateur de décrémentation est : � - - �
L'expression nombre- -; est équivalente à l'expression nombre = nombre - 1;
On a deux types d'incrémentation :- Postdécrémentation: nombre- -;
- Prédécrémentation: - -nombre;
Exemples:x=i- -; // équivalent à x=i; i=i-1;
x=- -i; // équivalent à i=i-1; x=i;
Remarque: Les opérateurs d'incrémentation et de décrémentation ontune priorité plus élevée que celle des opérateurs arithmétiques,relationnelles et logiques
N. Alioua Chapitre 1: Langage C - introduction et notions de base 83
![Page 330: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/330.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Autres Opérateurs raccourcis
Exemples:int x, y; x=3;y=5;x+=5; // équivalent à x=x+5, x aura la valeur 8x-=7; // équivalent à x=x-7, x aura la valeur 1y*=2; // équivalent à y=y*2, y aura la valeur 10y/=4; // équivalent à y=y/4, y aura la valeur 2. (et non pas 2.5 car son type est int)
N. Alioua Chapitre 1: Langage C - introduction et notions de base 84
![Page 331: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/331.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Si on a les variables suivantes:int x=10, y=5,a,b;
Quelles valeurs sont données par les instructions suivantes:a=x++;
b=++y;
a-=b;
b*=3;
x+=- -a + b++;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 85
![Page 332: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/332.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Si on a les variables suivantes:int x=10, y=5,a,b;
Quelles valeurs sont données par les instructions suivantes:a=x++;
b=++y;
a-=b;
b*=3;
x+=- -a + b++;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 85
![Page 333: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/333.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Si on a les variables suivantes:int x=10, y=5,a,b;
Quelles valeurs sont données par les instructions suivantes:a=x++; ⇒ a: 10 et x:11
b=++y;
a-=b;
b*=3;
x+=- -a + b++;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 85
![Page 334: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/334.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Si on a les variables suivantes:int x=10, y=5,a,b;
Quelles valeurs sont données par les instructions suivantes:a=x++; ⇒ a: 10 et x:11
b=++y; ⇒b: 6 et y:6
a-=b;
b*=3;
x+=- -a + b++;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 85
![Page 335: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/335.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Si on a les variables suivantes:int x=10, y=5,a,b;
Quelles valeurs sont données par les instructions suivantes:a=x++; ⇒ a: 10 et x:11
b=++y; ⇒b: 6 et y:6
a-=b; ⇒a: 4 et b:6
b*=3;
x+=- -a + b++;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 85
![Page 336: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/336.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Si on a les variables suivantes:int x=10, y=5,a,b;
Quelles valeurs sont données par les instructions suivantes:a=x++; ⇒ a: 10 et x:11
b=++y; ⇒b: 6 et y:6
a-=b; ⇒a: 4 et b:6
b*=3; ⇒b: 18
x+=- -a + b++;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 85
![Page 337: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/337.jpg)
Les opérateurs en langage C Opérateurs arithmétiques
Exercice
Si on a les variables suivantes:int x=10, y=5,a,b;
Quelles valeurs sont données par les instructions suivantes:a=x++; ⇒ a: 10 et x:11
b=++y; ⇒b: 6 et y:6
a-=b; ⇒a: 4 et b:6
b*=3; ⇒b: 18
x+=- -a + b++; ⇒ x:32 et a: 3 et b: 19
N. Alioua Chapitre 1: Langage C - introduction et notions de base 85
![Page 338: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/338.jpg)
Les opérateurs en langage C Opérateurs relationnels
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage COpérateurs arithmétiquesOpérateurs relationnelsOpérateur d'a�ectationOpérateurs logiquesAutres Opérateurs
N. Alioua Chapitre 1: Langage C - introduction et notions de base 86
![Page 339: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/339.jpg)
Les opérateurs en langage C Opérateurs relationnels
Opérateurs relationnels
Soit l'expression: (2 ∗ a) > (b+ 5)
Résultat:- 0 si le résultat de la comparaison est faux, c-à-d (2 ∗ a) < (b+ 5)
- 1 (ou toute autre valeur non nulle) si le résultat de la comparaison est vrai.
Les expressions comparées sont soumises aux règles de conversion detype étudiées pour les opérateurs arithmétiques
N. Alioua Chapitre 1: Langage C - introduction et notions de base 87
![Page 340: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/340.jpg)
Les opérateurs en langage C Opérateurs relationnels
Opérateurs relationnels
Soit l'expression: (2 ∗ a) > (b+ 5)
Résultat:- 0 si le résultat de la comparaison est faux, c-à-d (2 ∗ a) < (b+ 5)
- 1 (ou toute autre valeur non nulle) si le résultat de la comparaison est vrai.
Les expressions comparées sont soumises aux règles de conversion detype étudiées pour les opérateurs arithmétiques
N. Alioua Chapitre 1: Langage C - introduction et notions de base 87
![Page 341: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/341.jpg)
Les opérateurs en langage C Opérateurs relationnels
Précédence alphabétique des caractères
La précédence des caractères dans l'alphabet d'une machine estdépendante du code de caractères utilisé.
Pour le code ASCII, nous pouvons constater l'ordre suivant:. . . ,0,1,2, ... ,9, . . . ,A,B,C, ... ,Z,a,b,c, ... ,z, . . .
Les symboles spéciaux (' ,+ ,- , ,{ ,] , ...) et les lettres accentuées (é,è ,à ,û , ...) se trouvent répartis autour des trois grands groupes decaractères (chi�res, majuscules, minuscules). Leur précédence necorrespond à aucune règle d'ordre spéci�que.
On peut déduire une relation de précédence 'est inférieur à' surl'ensemble des caractères.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 88
![Page 342: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/342.jpg)
Les opérateurs en langage C Opérateurs relationnels
Précédence alphabétique des caractères
La précédence des caractères dans l'alphabet d'une machine estdépendante du code de caractères utilisé.
Pour le code ASCII, nous pouvons constater l'ordre suivant:. . . ,0,1,2, ... ,9, . . . ,A,B,C, ... ,Z,a,b,c, ... ,z, . . .
Les symboles spéciaux (' ,+ ,- , ,{ ,] , ...) et les lettres accentuées (é,è ,à ,û , ...) se trouvent répartis autour des trois grands groupes decaractères (chi�res, majuscules, minuscules). Leur précédence necorrespond à aucune règle d'ordre spéci�que.
On peut déduire une relation de précédence 'est inférieur à' surl'ensemble des caractères.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 88
![Page 343: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/343.jpg)
Les opérateurs en langage C Opérateurs relationnels
Précédence alphabétique des caractères
La précédence des caractères dans l'alphabet d'une machine estdépendante du code de caractères utilisé.
Pour le code ASCII, nous pouvons constater l'ordre suivant:. . . ,0,1,2, ... ,9, . . . ,A,B,C, ... ,Z,a,b,c, ... ,z, . . .
Les symboles spéciaux (' ,+ ,- , ,{ ,] , ...) et les lettres accentuées (é,è ,à ,û , ...) se trouvent répartis autour des trois grands groupes decaractères (chi�res, majuscules, minuscules). Leur précédence necorrespond à aucune règle d'ordre spéci�que.
On peut déduire une relation de précédence 'est inférieur à' surl'ensemble des caractères.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 88
![Page 344: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/344.jpg)
Les opérateurs en langage C Opérateurs relationnels
Précédence alphabétique des caractères
La précédence des caractères dans l'alphabet d'une machine estdépendante du code de caractères utilisé.
Pour le code ASCII, nous pouvons constater l'ordre suivant:. . . ,0,1,2, ... ,9, . . . ,A,B,C, ... ,Z,a,b,c, ... ,z, . . .
Les symboles spéciaux (' ,+ ,- , ,{ ,] , ...) et les lettres accentuées (é,è ,à ,û , ...) se trouvent répartis autour des trois grands groupes decaractères (chi�res, majuscules, minuscules). Leur précédence necorrespond à aucune règle d'ordre spéci�que.
On peut déduire une relation de précédence 'est inférieur à' surl'ensemble des caractères.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 88
![Page 345: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/345.jpg)
Les opérateurs en langage C Opérateurs relationnels
Opérateurs relationnels
On peut dire que : '0' est inférieur à 'Z' qu'on note: '0' < 'Z'.
En e�et, en alphabet de la machine, le code du caractère '0' (ASCII:48) est inférieur à celui du caractère 'Z' (ASCII: 90).
Exemple:- Soit c1 < c2, avec c1 et c2 de type char
- L'expression est vraie si le code du caractère de c1 a une valeur inférieure aucode du caractère de c2.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 89
![Page 346: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/346.jpg)
Les opérateurs en langage C Opérateurs relationnels
Opérateurs relationnels
On peut dire que : '0' est inférieur à 'Z' qu'on note: '0' < 'Z'.
En e�et, en alphabet de la machine, le code du caractère '0' (ASCII:48) est inférieur à celui du caractère 'Z' (ASCII: 90).
Exemple:- Soit c1 < c2, avec c1 et c2 de type char
- L'expression est vraie si le code du caractère de c1 a une valeur inférieure aucode du caractère de c2.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 89
![Page 347: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/347.jpg)
Les opérateurs en langage C Opérateurs relationnels
Opérateurs relationnels
On peut dire que : '0' est inférieur à 'Z' qu'on note: '0' < 'Z'.
En e�et, en alphabet de la machine, le code du caractère '0' (ASCII:48) est inférieur à celui du caractère 'Z' (ASCII: 90).
Exemple:- Soit c1 < c2, avec c1 et c2 de type char
- L'expression est vraie si le code du caractère de c1 a une valeur inférieure aucode du caractère de c2.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 89
![Page 348: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/348.jpg)
Les opérateurs en langage C Opérateurs relationnels
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z', c='9', d='E';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:x<=y;
x>=5;
(x+y)==(9+6);
(2*x)!=2;
a<b;
b>c;
d==a;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 90
![Page 349: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/349.jpg)
Les opérateurs en langage C Opérateurs relationnels
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z', c='9', d='E';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:x<=y;
x>=5;
(x+y)==(9+6);
(2*x)!=2;
a<b;
b>c;
d==a;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 90
![Page 350: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/350.jpg)
Les opérateurs en langage C Opérateurs relationnels
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z', c='9', d='E';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:x<=y; ⇒ 0
x>=5;
(x+y)==(9+6);
(2*x)!=2;
a<b;
b>c;
d==a;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 90
![Page 351: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/351.jpg)
Les opérateurs en langage C Opérateurs relationnels
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z', c='9', d='E';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:x<=y; ⇒ 0
x>=5; ⇒ 1
(x+y)==(9+6);
(2*x)!=2;
a<b;
b>c;
d==a;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 90
![Page 352: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/352.jpg)
Les opérateurs en langage C Opérateurs relationnels
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z', c='9', d='E';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:x<=y; ⇒ 0
x>=5; ⇒ 1
(x+y)==(9+6); ⇒ 1
(2*x)!=2;
a<b;
b>c;
d==a;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 90
![Page 353: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/353.jpg)
Les opérateurs en langage C Opérateurs relationnels
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z', c='9', d='E';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:x<=y; ⇒ 0
x>=5; ⇒ 1
(x+y)==(9+6); ⇒ 1
(2*x)!=2; ⇒ 1
a<b;
b>c;
d==a;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 90
![Page 354: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/354.jpg)
Les opérateurs en langage C Opérateurs relationnels
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z', c='9', d='E';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:x<=y; ⇒ 0
x>=5; ⇒ 1
(x+y)==(9+6); ⇒ 1
(2*x)!=2; ⇒ 1
a<b; ⇒ 0
b>c;
d==a;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 90
![Page 355: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/355.jpg)
Les opérateurs en langage C Opérateurs relationnels
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z', c='9', d='E';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:x<=y; ⇒ 0
x>=5; ⇒ 1
(x+y)==(9+6); ⇒ 1
(2*x)!=2; ⇒ 1
a<b; ⇒ 0
b>c; ⇒ 1
d==a;
N. Alioua Chapitre 1: Langage C - introduction et notions de base 90
![Page 356: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/356.jpg)
Les opérateurs en langage C Opérateurs relationnels
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z', c='9', d='E';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:x<=y; ⇒ 0
x>=5; ⇒ 1
(x+y)==(9+6); ⇒ 1
(2*x)!=2; ⇒ 1
a<b; ⇒ 0
b>c; ⇒ 1
d==a; ⇒ 0
N. Alioua Chapitre 1: Langage C - introduction et notions de base 90
![Page 357: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/357.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage COpérateurs arithmétiquesOpérateurs relationnelsOpérateur d'a�ectationOpérateurs logiquesAutres Opérateurs
N. Alioua Chapitre 1: Langage C - introduction et notions de base 91
![Page 358: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/358.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Opérateur d'a�ectation
L'opérateur d'a�ectation � = � s'utilise selon la syntaxe:variable = expression;
L'opération d'a�ectation est associatif de droite à gauche.
Exemple:int x, y;x=3; // x reçoit la valeur 3y=x; // y reçoit la valeur de x, c'est à dire 3
y=x=5; // x reçoit la valeur 5 et y reçoit la valeur de x qui est 5
Lors d'une a�ectation, le résultat est toujours converti dans le typede la destination. Si ce type est plus faible, il peut y avoir une pertede précision.
Exemple: Si n est de type int et x de type double,l'a�ectation : n = x + 5.3 ; entraînera tout d'abord l'évaluation del'expression située à droite, ce qui fournira une valeur de type double;cette dernière sera ensuite convertie en int pour pouvoir être a�ectée à n.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 92
![Page 359: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/359.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Opérateur d'a�ectation
L'opérateur d'a�ectation � = � s'utilise selon la syntaxe:variable = expression;
L'opération d'a�ectation est associatif de droite à gauche.
Exemple:int x, y;x=3; // x reçoit la valeur 3y=x; // y reçoit la valeur de x, c'est à dire 3
y=x=5; // x reçoit la valeur 5 et y reçoit la valeur de x qui est 5
Lors d'une a�ectation, le résultat est toujours converti dans le typede la destination. Si ce type est plus faible, il peut y avoir une pertede précision.
Exemple: Si n est de type int et x de type double,l'a�ectation : n = x + 5.3 ; entraînera tout d'abord l'évaluation del'expression située à droite, ce qui fournira une valeur de type double;cette dernière sera ensuite convertie en int pour pouvoir être a�ectée à n.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 92
![Page 360: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/360.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Opérateur d'a�ectation
L'opérateur d'a�ectation � = � s'utilise selon la syntaxe:variable = expression;
L'opération d'a�ectation est associatif de droite à gauche.
Exemple:int x, y;x=3; // x reçoit la valeur 3y=x; // y reçoit la valeur de x, c'est à dire 3
y=x=5; // x reçoit la valeur 5 et y reçoit la valeur de x qui est 5
Lors d'une a�ectation, le résultat est toujours converti dans le typede la destination. Si ce type est plus faible, il peut y avoir une pertede précision.
Exemple: Si n est de type int et x de type double,l'a�ectation : n = x + 5.3 ; entraînera tout d'abord l'évaluation del'expression située à droite, ce qui fournira une valeur de type double;cette dernière sera ensuite convertie en int pour pouvoir être a�ectée à n.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 92
![Page 361: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/361.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Opérateur d'a�ectation
L'opérateur d'a�ectation � = � s'utilise selon la syntaxe:variable = expression;
L'opération d'a�ectation est associatif de droite à gauche.
Exemple:int x, y;x=3; // x reçoit la valeur 3y=x; // y reçoit la valeur de x, c'est à dire 3
y=x=5; // x reçoit la valeur 5 et y reçoit la valeur de x qui est 5
Lors d'une a�ectation, le résultat est toujours converti dans le typede la destination. Si ce type est plus faible, il peut y avoir une pertede précision.
Exemple: Si n est de type int et x de type double,l'a�ectation : n = x + 5.3 ; entraînera tout d'abord l'évaluation del'expression située à droite, ce qui fournira une valeur de type double;cette dernière sera ensuite convertie en int pour pouvoir être a�ectée à n.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 92
![Page 362: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/362.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Opérateur d'a�ectation
L'opérateur d'a�ectation � = � s'utilise selon la syntaxe:variable = expression;
L'opération d'a�ectation est associatif de droite à gauche.
Exemple:int x, y;x=3; // x reçoit la valeur 3y=x; // y reçoit la valeur de x, c'est à dire 3
y=x=5; // x reçoit la valeur 5 et y reçoit la valeur de x qui est 5
Lors d'une a�ectation, le résultat est toujours converti dans le typede la destination. Si ce type est plus faible, il peut y avoir une pertede précision.
Exemple: Si n est de type int et x de type double,l'a�ectation : n = x + 5.3 ; entraînera tout d'abord l'évaluation del'expression située à droite, ce qui fournira une valeur de type double;cette dernière sera ensuite convertie en int pour pouvoir être a�ectée à n.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 92
![Page 363: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/363.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Opérateur d'a�ectation
L'a�ectation n'est pas commutative : A=B est di�érente de B=A
L'a�ectation est di�érente d'une équation mathématique :- A=A+1 a un sens en langages de programmation
- A+1=2 n'est pas possible en langages de programmation et n'est paséquivalente à A=1
L'a�ectation possède une associativité de droite à gauche.Exemple: int i,j; i = j = 5;
j prend la valeur 5 puis i prend cette même valeur est évaluée en premier,
N. Alioua Chapitre 1: Langage C - introduction et notions de base 93
![Page 364: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/364.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Opérateur d'a�ectation
L'a�ectation n'est pas commutative : A=B est di�érente de B=A
L'a�ectation est di�érente d'une équation mathématique :- A=A+1 a un sens en langages de programmation
- A+1=2 n'est pas possible en langages de programmation et n'est paséquivalente à A=1
L'a�ectation possède une associativité de droite à gauche.Exemple: int i,j; i = j = 5;
j prend la valeur 5 puis i prend cette même valeur est évaluée en premier,
N. Alioua Chapitre 1: Langage C - introduction et notions de base 93
![Page 365: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/365.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Opérateur d'a�ectation
L'a�ectation n'est pas commutative : A=B est di�érente de B=A
L'a�ectation est di�érente d'une équation mathématique :- A=A+1 a un sens en langages de programmation
- A+1=2 n'est pas possible en langages de programmation et n'est paséquivalente à A=1
L'a�ectation possède une associativité de droite à gauche.Exemple: int i,j; i = j = 5;
j prend la valeur 5 puis i prend cette même valeur est évaluée en premier,
N. Alioua Chapitre 1: Langage C - introduction et notions de base 93
![Page 366: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/366.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Opérateur d'a�ectation
L'a�ectation n'est pas commutative : A=B est di�érente de B=A
L'a�ectation est di�érente d'une équation mathématique :- A=A+1 a un sens en langages de programmation
- A+1=2 n'est pas possible en langages de programmation et n'est paséquivalente à A=1
L'a�ectation possède une associativité de droite à gauche.Exemple: int i,j; i = j = 5;
j prend la valeur 5 puis i prend cette même valeur est évaluée en premier,
N. Alioua Chapitre 1: Langage C - introduction et notions de base 93
![Page 367: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/367.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Opérateur d'a�ectation
L'a�ectation n'est pas commutative : A=B est di�érente de B=A
L'a�ectation est di�érente d'une équation mathématique :- A=A+1 a un sens en langages de programmation
- A+1=2 n'est pas possible en langages de programmation et n'est paséquivalente à A=1
L'a�ectation possède une associativité de droite à gauche.Exemple: int i,j; i = j = 5;
j prend la valeur 5 puis i prend cette même valeur est évaluée en premier,
N. Alioua Chapitre 1: Langage C - introduction et notions de base 93
![Page 368: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/368.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
Opérateur d'a�ectation
L'a�ectation n'est pas commutative : A=B est di�érente de B=A
L'a�ectation est di�érente d'une équation mathématique :- A=A+1 a un sens en langages de programmation
- A+1=2 n'est pas possible en langages de programmation et n'est paséquivalente à A=1
L'a�ectation possède une associativité de droite à gauche.Exemple: int i,j; i = j = 5;
j prend la valeur 5 puis i prend cette même valeur est évaluée en premier,
N. Alioua Chapitre 1: Langage C - introduction et notions de base 93
![Page 369: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/369.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
La notion de lvalue
L'opérateur d'a�ectation impose des restrictions sur son premieropérande, qui doit être une référence à un emplacement mémoire donton pourra modi�er la valeur.
Dans la syntaxe langage C, la notion de variable n'est pas assez précise.Il faut introduire un nouveau terme: lvalue.
lvalue: terme qui désigne une valeur à gauche (left value) et correspondà tout ce qui peut apparaître à gauche d'un opérateur d'a�ectation.
Jusqu'à cette partie du cours, les lvalue correspondent à toutes lesvariables de n'importe quel type de base. Nous étudierons d'autrelvalue plus tard.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 94
![Page 370: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/370.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
La notion de lvalue
L'opérateur d'a�ectation impose des restrictions sur son premieropérande, qui doit être une référence à un emplacement mémoire donton pourra modi�er la valeur.
Dans la syntaxe langage C, la notion de variable n'est pas assez précise.Il faut introduire un nouveau terme: lvalue.
lvalue: terme qui désigne une valeur à gauche (left value) et correspondà tout ce qui peut apparaître à gauche d'un opérateur d'a�ectation.
Jusqu'à cette partie du cours, les lvalue correspondent à toutes lesvariables de n'importe quel type de base. Nous étudierons d'autrelvalue plus tard.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 94
![Page 371: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/371.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
La notion de lvalue
L'opérateur d'a�ectation impose des restrictions sur son premieropérande, qui doit être une référence à un emplacement mémoire donton pourra modi�er la valeur.
Dans la syntaxe langage C, la notion de variable n'est pas assez précise.Il faut introduire un nouveau terme: lvalue.
lvalue: terme qui désigne une valeur à gauche (left value) et correspondà tout ce qui peut apparaître à gauche d'un opérateur d'a�ectation.
Jusqu'à cette partie du cours, les lvalue correspondent à toutes lesvariables de n'importe quel type de base. Nous étudierons d'autrelvalue plus tard.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 94
![Page 372: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/372.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
La notion de lvalue
L'opérateur d'a�ectation impose des restrictions sur son premieropérande, qui doit être une référence à un emplacement mémoire donton pourra modi�er la valeur.
Dans la syntaxe langage C, la notion de variable n'est pas assez précise.Il faut introduire un nouveau terme: lvalue.
lvalue: terme qui désigne une valeur à gauche (left value) et correspondà tout ce qui peut apparaître à gauche d'un opérateur d'a�ectation.
Jusqu'à cette partie du cours, les lvalue correspondent à toutes lesvariables de n'importe quel type de base. Nous étudierons d'autrelvalue plus tard.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 94
![Page 373: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/373.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
A�ectation sur di�érents types
L'a�ectation peut prendre des opérandes de types di�érents.
Cependant, contrairement aux autres opérateurs qui permettaient desconversions implicites, il n'est pas possible d'e�ectuer une quelconqueconversion de la lvalue.Une telle conversion reviendrait à changer le type de la lvalue �gurant àgauche de cet opérateur, ce qui n'a pas de sens.
Lorsque le type de l'expression �gurant à droite n'est pas du mêmetype que la lvalue, il y a conversion systématique de la valeur del'expression dans le type de la lvalue.
Cela peut donc conduire à une dégradation de l'information(convertir un double en int fait perdre la partie décimale).
Il est donc nécessaire de bien choisir les types de variables manipulés
N. Alioua Chapitre 1: Langage C - introduction et notions de base 95
![Page 374: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/374.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
A�ectation sur di�érents types
L'a�ectation peut prendre des opérandes de types di�érents.
Cependant, contrairement aux autres opérateurs qui permettaient desconversions implicites, il n'est pas possible d'e�ectuer une quelconqueconversion de la lvalue.Une telle conversion reviendrait à changer le type de la lvalue �gurant àgauche de cet opérateur, ce qui n'a pas de sens.
Lorsque le type de l'expression �gurant à droite n'est pas du mêmetype que la lvalue, il y a conversion systématique de la valeur del'expression dans le type de la lvalue.
Cela peut donc conduire à une dégradation de l'information(convertir un double en int fait perdre la partie décimale).
Il est donc nécessaire de bien choisir les types de variables manipulés
N. Alioua Chapitre 1: Langage C - introduction et notions de base 95
![Page 375: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/375.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
A�ectation sur di�érents types
L'a�ectation peut prendre des opérandes de types di�érents.
Cependant, contrairement aux autres opérateurs qui permettaient desconversions implicites, il n'est pas possible d'e�ectuer une quelconqueconversion de la lvalue.Une telle conversion reviendrait à changer le type de la lvalue �gurant àgauche de cet opérateur, ce qui n'a pas de sens.
Lorsque le type de l'expression �gurant à droite n'est pas du mêmetype que la lvalue, il y a conversion systématique de la valeur del'expression dans le type de la lvalue.
Cela peut donc conduire à une dégradation de l'information(convertir un double en int fait perdre la partie décimale).
Il est donc nécessaire de bien choisir les types de variables manipulés
N. Alioua Chapitre 1: Langage C - introduction et notions de base 95
![Page 376: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/376.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
A�ectation sur di�érents types
L'a�ectation peut prendre des opérandes de types di�érents.
Cependant, contrairement aux autres opérateurs qui permettaient desconversions implicites, il n'est pas possible d'e�ectuer une quelconqueconversion de la lvalue.Une telle conversion reviendrait à changer le type de la lvalue �gurant àgauche de cet opérateur, ce qui n'a pas de sens.
Lorsque le type de l'expression �gurant à droite n'est pas du mêmetype que la lvalue, il y a conversion systématique de la valeur del'expression dans le type de la lvalue.
Cela peut donc conduire à une dégradation de l'information(convertir un double en int fait perdre la partie décimale).
Il est donc nécessaire de bien choisir les types de variables manipulés
N. Alioua Chapitre 1: Langage C - introduction et notions de base 95
![Page 377: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/377.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
A�ectation sur di�érents types
L'a�ectation peut prendre des opérandes de types di�érents.
Cependant, contrairement aux autres opérateurs qui permettaient desconversions implicites, il n'est pas possible d'e�ectuer une quelconqueconversion de la lvalue.Une telle conversion reviendrait à changer le type de la lvalue �gurant àgauche de cet opérateur, ce qui n'a pas de sens.
Lorsque le type de l'expression �gurant à droite n'est pas du mêmetype que la lvalue, il y a conversion systématique de la valeur del'expression dans le type de la lvalue.
Cela peut donc conduire à une dégradation de l'information(convertir un double en int fait perdre la partie décimale).
Il est donc nécessaire de bien choisir les types de variables manipulés
N. Alioua Chapitre 1: Langage C - introduction et notions de base 95
![Page 378: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/378.jpg)
Les opérateurs en langage C Opérateur d'a�ectation
A�ectation sur di�érents types
L'a�ectation peut prendre des opérandes de types di�érents.
Cependant, contrairement aux autres opérateurs qui permettaient desconversions implicites, il n'est pas possible d'e�ectuer une quelconqueconversion de la lvalue.Une telle conversion reviendrait à changer le type de la lvalue �gurant àgauche de cet opérateur, ce qui n'a pas de sens.
Lorsque le type de l'expression �gurant à droite n'est pas du mêmetype que la lvalue, il y a conversion systématique de la valeur del'expression dans le type de la lvalue.
Cela peut donc conduire à une dégradation de l'information(convertir un double en int fait perdre la partie décimale).
Il est donc nécessaire de bien choisir les types de variables manipulés
N. Alioua Chapitre 1: Langage C - introduction et notions de base 95
![Page 379: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/379.jpg)
Les opérateurs en langage C Opérateurs logiques
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage COpérateurs arithmétiquesOpérateurs relationnelsOpérateur d'a�ectationOpérateurs logiquesAutres Opérateurs
N. Alioua Chapitre 1: Langage C - introduction et notions de base 96
![Page 380: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/380.jpg)
Les opérateurs en langage C Opérateurs logiques
Opérateurs logiques
En langage C, trois opérateurs logiques classiques existent: ET noté&&, OU noté ‖, NON noté !
Une expression logique s'écrit: Opérande 1 opérateur Opérande 2, avecopérateur: &&, ‖ ou !
La seconde opérande (celle à droite) des opérateurs && et ‖ n'estévaluée que si la connaissance de sa valeur est indispensable pourdécider si l'expression correspondante est vraie ou fausse.N. Alioua Chapitre 1: Langage C - introduction et notions de base 97
![Page 381: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/381.jpg)
Les opérateurs en langage C Opérateurs logiques
Opérateurs logiques binaires
Le C dispose aussi des opérateurs suivants &, | et ∧ pour e�ectuer desopérations bit à bit.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 98
![Page 382: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/382.jpg)
Les opérateurs en langage C Opérateurs logiques
Priorités
L'opérateur ‖ est moins prioritaire que &&. Tous deux sont moinsprioritaires que les opérateurs arithmétiques ou relationnels. Exemple:a<b && c<d équivaut à (a<b) && (c<d)a<b ‖ c<d équivaut à (a<b) ‖ (c<d)
Les opérateurs && et ‖ en C ont une propriété intéressante:leur second opérande (situé à droite) n'est évalué que si la connaissance desa valeur est indispensable pour décider si l'expression est vraie ou fausse.
Exemple: pour l'expression a<b && c<d, on commence par évaluer a<b.Si le résultat est faux (0), il est inutile d'évaluer c<d puisque, de toutefaçon, l'expression complète aura la valeur faux (0).
Ce comportement doit être pris en compte lorsqu'on construit desconditions, en plaçant l'opérande le plus pertinent en premier
N. Alioua Chapitre 1: Langage C - introduction et notions de base 99
![Page 383: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/383.jpg)
Les opérateurs en langage C Opérateurs logiques
Priorités
L'opérateur ‖ est moins prioritaire que &&. Tous deux sont moinsprioritaires que les opérateurs arithmétiques ou relationnels. Exemple:a<b && c<d équivaut à (a<b) && (c<d)a<b ‖ c<d équivaut à (a<b) ‖ (c<d)
Les opérateurs && et ‖ en C ont une propriété intéressante:leur second opérande (situé à droite) n'est évalué que si la connaissance desa valeur est indispensable pour décider si l'expression est vraie ou fausse.
Exemple: pour l'expression a<b && c<d, on commence par évaluer a<b.Si le résultat est faux (0), il est inutile d'évaluer c<d puisque, de toutefaçon, l'expression complète aura la valeur faux (0).
Ce comportement doit être pris en compte lorsqu'on construit desconditions, en plaçant l'opérande le plus pertinent en premier
N. Alioua Chapitre 1: Langage C - introduction et notions de base 99
![Page 384: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/384.jpg)
Les opérateurs en langage C Opérateurs logiques
Priorités
L'opérateur ‖ est moins prioritaire que &&. Tous deux sont moinsprioritaires que les opérateurs arithmétiques ou relationnels. Exemple:a<b && c<d équivaut à (a<b) && (c<d)a<b ‖ c<d équivaut à (a<b) ‖ (c<d)
Les opérateurs && et ‖ en C ont une propriété intéressante:leur second opérande (situé à droite) n'est évalué que si la connaissance desa valeur est indispensable pour décider si l'expression est vraie ou fausse.
Exemple: pour l'expression a<b && c<d, on commence par évaluer a<b.Si le résultat est faux (0), il est inutile d'évaluer c<d puisque, de toutefaçon, l'expression complète aura la valeur faux (0).
Ce comportement doit être pris en compte lorsqu'on construit desconditions, en plaçant l'opérande le plus pertinent en premier
N. Alioua Chapitre 1: Langage C - introduction et notions de base 99
![Page 385: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/385.jpg)
Les opérateurs en langage C Opérateurs logiques
Priorités
L'opérateur ‖ est moins prioritaire que &&. Tous deux sont moinsprioritaires que les opérateurs arithmétiques ou relationnels. Exemple:a<b && c<d équivaut à (a<b) && (c<d)a<b ‖ c<d équivaut à (a<b) ‖ (c<d)
Les opérateurs && et ‖ en C ont une propriété intéressante:leur second opérande (situé à droite) n'est évalué que si la connaissance desa valeur est indispensable pour décider si l'expression est vraie ou fausse.
Exemple: pour l'expression a<b && c<d, on commence par évaluer a<b.Si le résultat est faux (0), il est inutile d'évaluer c<d puisque, de toutefaçon, l'expression complète aura la valeur faux (0).
Ce comportement doit être pris en compte lorsqu'on construit desconditions, en plaçant l'opérande le plus pertinent en premier
N. Alioua Chapitre 1: Langage C - introduction et notions de base 99
![Page 386: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/386.jpg)
Les opérateurs en langage C Opérateurs logiques
Priorités
L'opérateur ‖ est moins prioritaire que &&. Tous deux sont moinsprioritaires que les opérateurs arithmétiques ou relationnels. Exemple:a<b && c<d équivaut à (a<b) && (c<d)a<b ‖ c<d équivaut à (a<b) ‖ (c<d)
Les opérateurs && et ‖ en C ont une propriété intéressante:leur second opérande (situé à droite) n'est évalué que si la connaissance desa valeur est indispensable pour décider si l'expression est vraie ou fausse.
Exemple: pour l'expression a<b && c<d, on commence par évaluer a<b.Si le résultat est faux (0), il est inutile d'évaluer c<d puisque, de toutefaçon, l'expression complète aura la valeur faux (0).
Ce comportement doit être pris en compte lorsqu'on construit desconditions, en plaçant l'opérande le plus pertinent en premier
N. Alioua Chapitre 1: Langage C - introduction et notions de base 99
![Page 387: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/387.jpg)
Les opérateurs en langage C Opérateurs logiques
Priorités
L'opérateur ‖ est moins prioritaire que &&. Tous deux sont moinsprioritaires que les opérateurs arithmétiques ou relationnels. Exemple:a<b && c<d équivaut à (a<b) && (c<d)a<b ‖ c<d équivaut à (a<b) ‖ (c<d)
Les opérateurs && et ‖ en C ont une propriété intéressante:leur second opérande (situé à droite) n'est évalué que si la connaissance desa valeur est indispensable pour décider si l'expression est vraie ou fausse.
Exemple: pour l'expression a<b && c<d, on commence par évaluer a<b.Si le résultat est faux (0), il est inutile d'évaluer c<d puisque, de toutefaçon, l'expression complète aura la valeur faux (0).
Ce comportement doit être pris en compte lorsqu'on construit desconditions, en plaçant l'opérande le plus pertinent en premier
N. Alioua Chapitre 1: Langage C - introduction et notions de base 99
![Page 388: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/388.jpg)
Les opérateurs en langage C Opérateurs logiques
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:(x<=y ‖ x>=5);(x!=3 && a<b);
!(x<=y ‖ x>=5);
N. Alioua Chapitre 1: Langage C - introduction et notions de base 100
![Page 389: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/389.jpg)
Les opérateurs en langage C Opérateurs logiques
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:(x<=y ‖ x>=5);(x!=3 && a<b);
!(x<=y ‖ x>=5);
N. Alioua Chapitre 1: Langage C - introduction et notions de base 100
![Page 390: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/390.jpg)
Les opérateurs en langage C Opérateurs logiques
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:(x<=y ‖ x>=5); ⇒ 0 ou 1 donc 1
(x!=3 && a<b);
!(x<=y ‖ x>=5);
N. Alioua Chapitre 1: Langage C - introduction et notions de base 100
![Page 391: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/391.jpg)
Les opérateurs en langage C Opérateurs logiques
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:(x<=y ‖ x>=5); ⇒ 0 ou 1 donc 1
(x!=3 && a<b); ⇒ 1 et 0 donc 0
!(x<=y ‖ x>=5);
N. Alioua Chapitre 1: Langage C - introduction et notions de base 100
![Page 392: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/392.jpg)
Les opérateurs en langage C Opérateurs logiques
Exercice
Si on a les variables suivantes:int x=10, y=5;
char a='e', b='Z';
En considérant que le codage de la machine est le code ASCII, quellesvaleurs sont données par les instructions suivantes:(x<=y ‖ x>=5); ⇒ 0 ou 1 donc 1
(x!=3 && a<b); ⇒ 1 et 0 donc 0
!(x<=y ‖ x>=5); ⇒ Non 1 donc 0
N. Alioua Chapitre 1: Langage C - introduction et notions de base 100
![Page 393: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/393.jpg)
Les opérateurs en langage C Autres Opérateurs
Plan
1 Introduction à la programmation en langage C
2 Éléments généraux d'un programme en langage C
3 Les types de base en langage C
4 Les variables et les constantes en langage C
5 Les opérateurs en langage COpérateurs arithmétiquesOpérateurs relationnelsOpérateur d'a�ectationOpérateurs logiquesAutres Opérateurs
N. Alioua Chapitre 1: Langage C - introduction et notions de base 101
![Page 394: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/394.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur de type forcé "cast"
Pour forcer la conversion dans un type donné, on utilise l'opérateur cast.
Syntaxe: (type) expression;
Exemple:int x=10, y=3;
(�oat) (x/y); // donne 3.0000
Notez que c'est le résultat de l'expression qui est forcé en �oat.
Si on n'utilise pas de parenthèse pour l'expression (�oat) x/y ; on aura lavaleur 3.3333 car on force x à devenir �oat puis y deviendra �oat par larègle de conversion implicite
N. Alioua Chapitre 1: Langage C - introduction et notions de base 102
![Page 395: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/395.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur de type forcé "cast"
Pour forcer la conversion dans un type donné, on utilise l'opérateur cast.
Syntaxe: (type) expression;
Exemple:int x=10, y=3;
(�oat) (x/y); // donne 3.0000
Notez que c'est le résultat de l'expression qui est forcé en �oat.
Si on n'utilise pas de parenthèse pour l'expression (�oat) x/y ; on aura lavaleur 3.3333 car on force x à devenir �oat puis y deviendra �oat par larègle de conversion implicite
N. Alioua Chapitre 1: Langage C - introduction et notions de base 102
![Page 396: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/396.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur de type forcé "cast"
Pour forcer la conversion dans un type donné, on utilise l'opérateur cast.
Syntaxe: (type) expression;
Exemple:int x=10, y=3;
(�oat) (x/y); // donne 3.0000
Notez que c'est le résultat de l'expression qui est forcé en �oat.
Si on n'utilise pas de parenthèse pour l'expression (�oat) x/y ; on aura lavaleur 3.3333 car on force x à devenir �oat puis y deviendra �oat par larègle de conversion implicite
N. Alioua Chapitre 1: Langage C - introduction et notions de base 102
![Page 397: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/397.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur de type forcé "cast"
Pour forcer la conversion dans un type donné, on utilise l'opérateur cast.
Syntaxe: (type) expression;
Exemple:int x=10, y=3;
(�oat) (x/y); // donne 3.0000
Notez que c'est le résultat de l'expression qui est forcé en �oat.
Si on n'utilise pas de parenthèse pour l'expression (�oat) x/y ; on aura lavaleur 3.3333 car on force x à devenir �oat puis y deviendra �oat par larègle de conversion implicite
N. Alioua Chapitre 1: Langage C - introduction et notions de base 102
![Page 398: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/398.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur de type forcé "cast"
Pour forcer la conversion dans un type donné, on utilise l'opérateur cast.
Syntaxe: (type) expression;
Exemple:int x=10, y=3;
(�oat) (x/y); // donne 3.0000
Notez que c'est le résultat de l'expression qui est forcé en �oat.
Si on n'utilise pas de parenthèse pour l'expression (�oat) x/y ; on aura lavaleur 3.3333 car on force x à devenir �oat puis y deviendra �oat par larègle de conversion implicite
N. Alioua Chapitre 1: Langage C - introduction et notions de base 102
![Page 399: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/399.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur séquentiel ","
L'opérateur séquentiel noté virgule "," permet d'exprimer plusieurscalculs successifs au sein d'une même expression.
Exemple: i++, j = i + k;évaluation de l'expression i++
évaluation de l'a�ectation j = i + k en utilisant la valeur de i aprèsincrémentation par l'expression précédente.
Cet opérateur séquentiel possède une associativité de gauche à droite etsa faible priorité évite l'usage de parenthèses:
Cet opérateur est fréquemment utilisé dans les instructionsconditionnelles ou les boucles: il permettra de placer plusieursexpressions là où on s'attend à trouver une seule expression
N. Alioua Chapitre 1: Langage C - introduction et notions de base 103
![Page 400: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/400.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur séquentiel ","
L'opérateur séquentiel noté virgule "," permet d'exprimer plusieurscalculs successifs au sein d'une même expression.
Exemple: i++, j = i + k;évaluation de l'expression i++
évaluation de l'a�ectation j = i + k en utilisant la valeur de i aprèsincrémentation par l'expression précédente.
Cet opérateur séquentiel possède une associativité de gauche à droite etsa faible priorité évite l'usage de parenthèses:
Cet opérateur est fréquemment utilisé dans les instructionsconditionnelles ou les boucles: il permettra de placer plusieursexpressions là où on s'attend à trouver une seule expression
N. Alioua Chapitre 1: Langage C - introduction et notions de base 103
![Page 401: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/401.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur séquentiel ","
L'opérateur séquentiel noté virgule "," permet d'exprimer plusieurscalculs successifs au sein d'une même expression.
Exemple: i++, j = i + k;évaluation de l'expression i++
évaluation de l'a�ectation j = i + k en utilisant la valeur de i aprèsincrémentation par l'expression précédente.
Cet opérateur séquentiel possède une associativité de gauche à droite etsa faible priorité évite l'usage de parenthèses:
Cet opérateur est fréquemment utilisé dans les instructionsconditionnelles ou les boucles: il permettra de placer plusieursexpressions là où on s'attend à trouver une seule expression
N. Alioua Chapitre 1: Langage C - introduction et notions de base 103
![Page 402: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/402.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur séquentiel ","
L'opérateur séquentiel noté virgule "," permet d'exprimer plusieurscalculs successifs au sein d'une même expression.
Exemple: i++, j = i + k;évaluation de l'expression i++
évaluation de l'a�ectation j = i + k en utilisant la valeur de i aprèsincrémentation par l'expression précédente.
Cet opérateur séquentiel possède une associativité de gauche à droite etsa faible priorité évite l'usage de parenthèses:
Cet opérateur est fréquemment utilisé dans les instructionsconditionnelles ou les boucles: il permettra de placer plusieursexpressions là où on s'attend à trouver une seule expression
N. Alioua Chapitre 1: Langage C - introduction et notions de base 103
![Page 403: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/403.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur séquentiel ","
L'opérateur séquentiel noté virgule "," permet d'exprimer plusieurscalculs successifs au sein d'une même expression.
Exemple: i++, j = i + k;évaluation de l'expression i++
évaluation de l'a�ectation j = i + k en utilisant la valeur de i aprèsincrémentation par l'expression précédente.
Cet opérateur séquentiel possède une associativité de gauche à droite etsa faible priorité évite l'usage de parenthèses:
Cet opérateur est fréquemment utilisé dans les instructionsconditionnelles ou les boucles: il permettra de placer plusieursexpressions là où on s'attend à trouver une seule expression
N. Alioua Chapitre 1: Langage C - introduction et notions de base 103
![Page 404: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/404.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur séquentiel ","
L'opérateur séquentiel noté virgule "," permet d'exprimer plusieurscalculs successifs au sein d'une même expression.
Exemple: i++, j = i + k;évaluation de l'expression i++
évaluation de l'a�ectation j = i + k en utilisant la valeur de i aprèsincrémentation par l'expression précédente.
Cet opérateur séquentiel possède une associativité de gauche à droite etsa faible priorité évite l'usage de parenthèses:
Cet opérateur est fréquemment utilisé dans les instructionsconditionnelles ou les boucles: il permettra de placer plusieursexpressions là où on s'attend à trouver une seule expression
N. Alioua Chapitre 1: Langage C - introduction et notions de base 103
![Page 405: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/405.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 406: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/406.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 407: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/407.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 408: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/408.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 409: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/409.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 410: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/410.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 411: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/411.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 412: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/412.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 413: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/413.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 414: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/414.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 415: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/415.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 416: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/416.jpg)
Les opérateurs en langage C Autres Opérateurs
Opérateur sizeof
L'opérateur sizeof, qui ressemble à une fonction, fournit la taille enoctets.
Exemple:, si le type int est représenté sur 4 octets et le type double sur8 octets, et que:int n ;
double z ;
sizeof(n) vaudra 4
sizeof(z) vaudra 8
Cet opérateur peut également s'appliquer à un type donné. Dans lareprésentation précédente:sizeof(int) vaudra 4
sizeof(double) vaudra 8
Cet opérateur est utile pour:écrire des programmes portables dans lesquels il est nécessaire de connaîtrela taille exacte de certains objets.
éviter d'avoir à calculer soi-même la taille d'objets.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 104
![Page 417: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/417.jpg)
Les opérateurs en langage C Autres Opérateurs
Conclusion
Dans ce chapitre nous avons vu:Une dé�nition de la programmation et sa relation avec l'algorithmique
Pourquoi on va étudier le langage C en particulier
Les notions de type, de variables et d'opérateurs en langage C
Dans le chapitre qui suit, nous allons étudié les di�érentes instructionsen langage C (autres que les instructions d'a�ectation que nous avonsétudié dans ce chapitre) à savoir:Les instructions d'entrée et de sortie (E/S) qui correspondent à la saisieet à l'a�chage
Les instructions de contrôle, à savoir:Les instructions conditionnelles
Les instructions répétitives
Les instructions inconditionnelles
N. Alioua Chapitre 1: Langage C - introduction et notions de base 105
![Page 418: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/418.jpg)
Les opérateurs en langage C Autres Opérateurs
Conclusion
Dans ce chapitre nous avons vu:Une dé�nition de la programmation et sa relation avec l'algorithmique
Pourquoi on va étudier le langage C en particulier
Les notions de type, de variables et d'opérateurs en langage C
Dans le chapitre qui suit, nous allons étudié les di�érentes instructionsen langage C (autres que les instructions d'a�ectation que nous avonsétudié dans ce chapitre) à savoir:Les instructions d'entrée et de sortie (E/S) qui correspondent à la saisieet à l'a�chage
Les instructions de contrôle, à savoir:Les instructions conditionnelles
Les instructions répétitives
Les instructions inconditionnelles
N. Alioua Chapitre 1: Langage C - introduction et notions de base 105
![Page 419: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/419.jpg)
Les opérateurs en langage C Autres Opérateurs
Conclusion
Dans ce chapitre nous avons vu:Une dé�nition de la programmation et sa relation avec l'algorithmique
Pourquoi on va étudier le langage C en particulier
Les notions de type, de variables et d'opérateurs en langage C
Dans le chapitre qui suit, nous allons étudié les di�érentes instructionsen langage C (autres que les instructions d'a�ectation que nous avonsétudié dans ce chapitre) à savoir:Les instructions d'entrée et de sortie (E/S) qui correspondent à la saisieet à l'a�chage
Les instructions de contrôle, à savoir:Les instructions conditionnelles
Les instructions répétitives
Les instructions inconditionnelles
N. Alioua Chapitre 1: Langage C - introduction et notions de base 105
![Page 420: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/420.jpg)
Les opérateurs en langage C Autres Opérateurs
Conclusion
Dans ce chapitre nous avons vu:Une dé�nition de la programmation et sa relation avec l'algorithmique
Pourquoi on va étudier le langage C en particulier
Les notions de type, de variables et d'opérateurs en langage C
Dans le chapitre qui suit, nous allons étudié les di�érentes instructionsen langage C (autres que les instructions d'a�ectation que nous avonsétudié dans ce chapitre) à savoir:Les instructions d'entrée et de sortie (E/S) qui correspondent à la saisieet à l'a�chage
Les instructions de contrôle, à savoir:Les instructions conditionnelles
Les instructions répétitives
Les instructions inconditionnelles
N. Alioua Chapitre 1: Langage C - introduction et notions de base 105
![Page 421: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/421.jpg)
Les opérateurs en langage C Autres Opérateurs
Conclusion
Dans ce chapitre nous avons vu:Une dé�nition de la programmation et sa relation avec l'algorithmique
Pourquoi on va étudier le langage C en particulier
Les notions de type, de variables et d'opérateurs en langage C
Dans le chapitre qui suit, nous allons étudié les di�érentes instructionsen langage C (autres que les instructions d'a�ectation que nous avonsétudié dans ce chapitre) à savoir:Les instructions d'entrée et de sortie (E/S) qui correspondent à la saisieet à l'a�chage
Les instructions de contrôle, à savoir:Les instructions conditionnelles
Les instructions répétitives
Les instructions inconditionnelles
N. Alioua Chapitre 1: Langage C - introduction et notions de base 105
![Page 422: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/422.jpg)
Les opérateurs en langage C Autres Opérateurs
Conclusion
Dans ce chapitre nous avons vu:Une dé�nition de la programmation et sa relation avec l'algorithmique
Pourquoi on va étudier le langage C en particulier
Les notions de type, de variables et d'opérateurs en langage C
Dans le chapitre qui suit, nous allons étudié les di�érentes instructionsen langage C (autres que les instructions d'a�ectation que nous avonsétudié dans ce chapitre) à savoir:Les instructions d'entrée et de sortie (E/S) qui correspondent à la saisieet à l'a�chage
Les instructions de contrôle, à savoir:Les instructions conditionnelles
Les instructions répétitives
Les instructions inconditionnelles
N. Alioua Chapitre 1: Langage C - introduction et notions de base 105
![Page 423: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/423.jpg)
Les opérateurs en langage C Autres Opérateurs
Conclusion
Dans ce chapitre nous avons vu:Une dé�nition de la programmation et sa relation avec l'algorithmique
Pourquoi on va étudier le langage C en particulier
Les notions de type, de variables et d'opérateurs en langage C
Dans le chapitre qui suit, nous allons étudié les di�érentes instructionsen langage C (autres que les instructions d'a�ectation que nous avonsétudié dans ce chapitre) à savoir:Les instructions d'entrée et de sortie (E/S) qui correspondent à la saisieet à l'a�chage
Les instructions de contrôle, à savoir:Les instructions conditionnelles
Les instructions répétitives
Les instructions inconditionnelles
N. Alioua Chapitre 1: Langage C - introduction et notions de base 105
![Page 424: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/424.jpg)
Les opérateurs en langage C Autres Opérateurs
Conclusion
Dans ce chapitre nous avons vu:Une dé�nition de la programmation et sa relation avec l'algorithmique
Pourquoi on va étudier le langage C en particulier
Les notions de type, de variables et d'opérateurs en langage C
Dans le chapitre qui suit, nous allons étudié les di�érentes instructionsen langage C (autres que les instructions d'a�ectation que nous avonsétudié dans ce chapitre) à savoir:Les instructions d'entrée et de sortie (E/S) qui correspondent à la saisieet à l'a�chage
Les instructions de contrôle, à savoir:Les instructions conditionnelles
Les instructions répétitives
Les instructions inconditionnelles
N. Alioua Chapitre 1: Langage C - introduction et notions de base 105
![Page 425: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/425.jpg)
Les opérateurs en langage C Autres Opérateurs
Conclusion
Dans ce chapitre nous avons vu:Une dé�nition de la programmation et sa relation avec l'algorithmique
Pourquoi on va étudier le langage C en particulier
Les notions de type, de variables et d'opérateurs en langage C
Dans le chapitre qui suit, nous allons étudié les di�érentes instructionsen langage C (autres que les instructions d'a�ectation que nous avonsétudié dans ce chapitre) à savoir:Les instructions d'entrée et de sortie (E/S) qui correspondent à la saisieet à l'a�chage
Les instructions de contrôle, à savoir:Les instructions conditionnelles
Les instructions répétitives
Les instructions inconditionnelles
N. Alioua Chapitre 1: Langage C - introduction et notions de base 105
![Page 426: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/426.jpg)
Les opérateurs en langage C Autres Opérateurs
Conclusion
Dans ce chapitre nous avons vu:Une dé�nition de la programmation et sa relation avec l'algorithmique
Pourquoi on va étudier le langage C en particulier
Les notions de type, de variables et d'opérateurs en langage C
Dans le chapitre qui suit, nous allons étudié les di�érentes instructionsen langage C (autres que les instructions d'a�ectation que nous avonsétudié dans ce chapitre) à savoir:Les instructions d'entrée et de sortie (E/S) qui correspondent à la saisieet à l'a�chage
Les instructions de contrôle, à savoir:Les instructions conditionnelles
Les instructions répétitives
Les instructions inconditionnelles
N. Alioua Chapitre 1: Langage C - introduction et notions de base 105
![Page 427: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/427.jpg)
Les opérateurs en langage C Autres Opérateurs
Résumé de la priorité et associativité des opérateurs en C
Prio/asso Op Desc Utilisation1 (G à D) () parenthèses (expression)
() Appel de fonction fonction(paramètres)[ ] contenu tableau Tableau[expression]++ Post-incrementation lvalue++- - Post-décrementation lvalue- -
2 (D à G) + plus unaire +expression- moins unaire -expression++ Pré-incrementation ++lvalue- - Pré-décrementation - -lvalue! non logique !expression∼ non bit à bit ∼expression(type) cast (type)expressionsizeof taille en octets sizeof(type ou expression)& adresse de lvalue &lvalue* contenu pointeur *pointeur
N. Alioua Chapitre 1: Langage C - introduction et notions de base 106
![Page 428: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/428.jpg)
Les opérateurs en langage C Autres Opérateurs
Résumé de la priorité et associativité des opérateurs en C
Prio/asso Op Desc Utilisation3 (G à D) * Multiplication expresion*expression
/ Division expresion/expression% Modulo expression% expression
4 (G à D) + addition expression+expression- soustraction expression-expression
5 (G à D) � Décalage de bit à gauche expression�expression� Décalage de bit à droite expression�expression
6 (G à D) < inférieur expression<expression<= inférieur ou égal expression<=expression> supérieur expression>expression>= supérieur ou égal expression>=expression
7 (G à D) == égalité expression==expression!= inégalité expression!=expression
8 (G à D) & ET bit à bit expression&expression9 (G à D) ∧ XOR bit à bit expression∧expression10 (G à D) | OU bit à bit expression|expression
N. Alioua Chapitre 1: Langage C - introduction et notions de base 107
![Page 429: Chapitre 1: Langage C - introduction et notions de base](https://reader035.vdocuments.pub/reader035/viewer/2022062411/62acbf680d57f96b8c57dd44/html5/thumbnails/429.jpg)
Les opérateurs en langage C Autres Opérateurs
Résumé de la priorité et associativité des opérateurs en C
Prio/asso Op Desc Utilisation11 (G à D) && ET logique expression&&expression12 (G à D) ‖ OU logique expression‖expression13 (D à G) ?: conditionnel expression?expression:expression
= a�ectation lvalue=expression*= racc * lvalue*=expression/= racc / lvalue/=expression%= racc % lvalue%=expression+= racc + lvalue+=expression-= racc - lvalue-=expression�= racc � lvalue�=expression�= racc � lvalue�=expression&= racc & lvalue&=expression|= racc | lvalue|=expression∧= racc ∧ lvalue∧=expression
Associativité D à G: a op b op c ⇒ a op ( b op c).
Associativité G à D: a op b op c ⇒ (a op b) op c.
N. Alioua Chapitre 1: Langage C - introduction et notions de base 108