variable
This commit is contained in:
35
variables.md
35
variables.md
@@ -2,6 +2,12 @@
|
||||
|
||||
> Une variable est un élément qui associe un **identifiant** à une **valeur**.
|
||||
|
||||
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 l’exécution)
|
||||
|
||||
## Caractéristiques
|
||||
|
||||
Une variable possède plusieurs caractéristiques ou propriétés.
|
||||
@@ -12,6 +18,10 @@ La **déclaration**, c'est l'endroit dans le code qui défini l'existence de la
|
||||
int age = 19;
|
||||
```
|
||||
|
||||
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).
|
||||
|
||||
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.
|
||||
@@ -26,13 +36,13 @@ La **valeur**, c'est la valeur intrasèque des bits suivant la représentation a
|
||||
|
||||
Dans cet exemple la valeur de la variable `age` est `10`.
|
||||
|
||||
L'**adresse**, c'est l'endroit dans la mémoire de l'ordinateur où est stockée physiquement la variable.
|
||||
|
||||
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.
|
||||
|
||||
Sa **durée de vie**, c'est le temps d'exécution pendant laquelle la variable existe. Il est possible de masquer une variable par une autre en utilisant un même identifiant. La première variable est hors de portée mais existe toujours. Une variable `static` est utilisable que dans la fonction dans laquelle elle a été déclarée, cependant sa durée de vie s'étend sur l'intégralité de l'éxécution du programme.
|
||||
Variable locale : déclarée dans une fonction ou un bloc
|
||||
|
||||
Sa **visibilité**, dans un langage évolué comme le C++, le C# ou Java, c'est un ensemble de règles qui fixe qui peut utiliser la variable.
|
||||
Variable globale : déclarée en dehors de toute fonction
|
||||
|
||||
Les variables déclarées dans une fonction sont locales à cette fonction. Les paramètres d’une fonction sont eux aussi des variables locales.
|
||||
|
||||
### Règles
|
||||
|
||||
@@ -70,19 +80,12 @@ int main()
|
||||
}
|
||||
```
|
||||
|
||||
## Expressions littérales
|
||||
## Types courants
|
||||
|
||||
Dans un programme il est possible de manipuler des valeurs sans pour autant les avoir déclarées avant. Ces valeurs existent de manières littérales à l'intérieur même du code du programme.
|
||||
int : nombre entier
|
||||
|
||||
> [!WARNING]
|
||||
> Attention, dans le cas des chaines de caractères, il ne faut pas confondre le nom de la variable avec sa valeur.
|
||||
float : nombre réel (simple précision)
|
||||
|
||||
double : nombre réel (double précision)
|
||||
|
||||
```c
|
||||
char joueur[10] = "Alice";
|
||||
|
||||
printf("%s\n", "joueur");
|
||||
printf("%s\n", joueur);
|
||||
```
|
||||
|
||||
`"joueur"` avec des guillemets est une valeur littérale. On peut considérer, sans que cela soit le cas, que c'est une variable sans nom, qui possède la valeur `joueur`.
|
||||
char : caractère
|
||||
|
||||
Reference in New Issue
Block a user