variable
This commit is contained in:
@@ -38,7 +38,7 @@ Déclarer une constante
|
||||
|
||||
### Fonctions
|
||||
|
||||
La fonction main est le point d'entrée de tout programme C. Elle retourne un code numérique pour spécifier si le traitement (quelqu'il soit) s'est bien déroulé.
|
||||
La fonction `main` est le point d'entrée de tout programme C. Elle retourne un code numérique pour spécifier si le traitement (quelqu'il soit) s'est bien déroulé.
|
||||
|
||||
### Variables
|
||||
|
||||
|
||||
88
varaibles2.md
Normal file
88
varaibles2.md
Normal file
@@ -0,0 +1,88 @@
|
||||
# Variables
|
||||
|
||||
> Une variable est un élément qui associe un **identifiant** à une **valeur**.
|
||||
|
||||
## 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;
|
||||
```
|
||||
|
||||
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`.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
### 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);
|
||||
}
|
||||
```
|
||||
|
||||
## Expressions littérales
|
||||
|
||||
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.
|
||||
|
||||
> [!WARNING]
|
||||
> Attention, dans le cas des chaines de caractères, il ne faut pas confondre le nom de la variable avec sa valeur.
|
||||
|
||||
|
||||
```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`.
|
||||
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