Files
programmationc/variables.md

92 lines
2.8 KiB
Markdown
Raw Permalink Normal View History

2026-01-05 22:36:14 +01:00
# Variables
> Une variable est un élément qui associe un **identifiant** à une **valeur**.
2026-01-06 13:03:22 +01:00
Une variable est un espace mémoire nommé qui permet de stocker une valeur manipulée par le programme. En langage C, chaque variable possède :
- un type (entier, réel, caractère, etc.)
- un nom
- une valeur (modifiable au cours de lexécution)
2026-01-05 22:36:14 +01:00
## Caractéristiques
Une variable possède plusieurs caractéristiques ou propriétés.
La **déclaration**, c'est l'endroit dans le code qui défini l'existence de la variable.
```c
int age = 19;
```
2026-01-06 13:03:22 +01:00
L'**initialisation** : attribue une valeur à la valeur.
Utiliser une variable non initialisée conduit à un comportement indéfini. Les varaiables sont pas toujours initialisées à une valeur par défaut (comme 0 par exemple).
2026-01-05 22:36:14 +01:00
Un **nom** sous lequel la variable est déclarée. Dans cette déclaration le nom de la variable est `age`.
Un **type**. Dans la mémoire d'un ordinateur, toute information est stockée sous forme d'éléments binaires appelés `bit` (en: binary digit, nombre binaire). Un même ensemble de bits peut être représenté sous différentes aspects : nombre entier, nombre réel, texte, photo, vidéo, audio, ... C'est la convention d'interprétation du type qui défini la valeur de la variable.
Dans cette déclaration le type de la variable `age` est un entier `int`.
La **taille** associée au type. Dans le cas des types fixe, le type de la variable spécifie aussi le nombre de bits ou le nombre de mots (en: bytes, octets) utilisés.
Dans cette déclaration la taille de la variable `age` est de 4 octets ou 32 bits, qui est la taille associée à un type `int`.
La **valeur**, c'est la valeur intrasèque des bits suivant la représentation associée au type;
Dans cet exemple la valeur de la variable `age` est `10`.
La **portée**, c'est la portion de code où la variable est utilisable. Une variable est accessible depuis sa définition jusqu'à la fin du bloc où elle est déclarée.
2026-01-06 13:03:22 +01:00
Variable locale : déclarée dans une fonction ou un bloc
Variable globale : déclarée en dehors de toute fonction
2026-01-05 22:36:14 +01:00
2026-01-06 13:03:22 +01:00
Les variables déclarées dans une fonction sont locales à cette fonction. Les paramètres dune fonction sont eux aussi des variables locales.
2026-01-05 22:36:14 +01:00
### Règles
#### Déclaration
> [!WARNING]
> Les variables doivent être déclarées **avant** d'être utilisées.
```c
#include <stdio.h>
int main()
{
printf("%d", age);
int age = 10;
}
```
Ce code provoque une erreur : la variable est non déclarée avant sont utilisation !
```
error: age' undeclared (first use in this function)
```
Voici le code correct
```c
#include <stdio.h>
int main()
{
int age = 10;
printf("%d", age);
}
```
2026-01-06 13:03:22 +01:00
## Types courants
2026-01-05 22:36:14 +01:00
2026-01-06 13:03:22 +01:00
int : nombre entier
2026-01-05 22:36:14 +01:00
2026-01-06 13:03:22 +01:00
float : nombre réel (simple précision)
2026-01-05 22:36:14 +01:00
2026-01-06 13:03:22 +01:00
double : nombre réel (double précision)
2026-01-05 22:36:14 +01:00
2026-01-06 13:03:22 +01:00
char : caractère