Programmation en C – Les variables

Une variable n’est rien d’autre qu’un nom donné à une zone de stockage que nos programmes peuvent la manipuler. Chaque variable en C a un type spécifique, qui détermine la taille et la disposition des variables en mémoire pour une variable donnée; c’est-à-dire La plage de valeurs qui peuvent être stockées dans cette mémoire; Et l’ensemble des opérations qui peuvent être appliquées à la variable.
 
 
Le nom d’une variable peut être composé de lettres, de chiffres et du tirets. Il doit commencer par une lettre ou une tiret ( _ ). Les lettres majuscules et minuscules sont distinctes car C est sensible à la casse. Sur la base des types expliqués dans le chapitre précédent, il y aura les types de variables suivants :

Type Description
char Typiquement un seul octet. Il s’agit d’un type entier..
int La taille la plus naturelle du nombre entier pour la machine.
float Valeur à virgule flottante en simple précision.
double Valeur à virgule flottante en double précision.
void Représente l’absence de type.

Le langage de programmation C permet également de définir plusieurs types de variables, que nous aborderons dans les chapitres suivants: Enumeration, Pointer, Array, Structure, Union, etc. Pour ce chapitre, étudions uniquement les types de variables de base.
 

Définition d’une variable en C

Une définition de variable indique au compilateur où et combien de stockage créer pour la variable. Une définition de variable spécifie un type de données et contient une liste d’une ou plusieurs variables de ce type comme suit

type variable_list;

Ici, type doit être un type de données C valide, y compris char, int, float, double, bool ou tout objet défini par l’utilisateur; Et la variable_list peut consister en un ou plusieurs identificateurs séparés par des virgules. Certaines déclarations valides sont affichées ici

int    a, b, c;
char   e, f;
float  fl1, solde;
double x;

La ligne int a, b, c; Déclare et définit les variables a, b et c; Qui donnent instruction au compilateur de créer des variables nommées a, b et c de type int.

Les variables peuvent être initialisées dans leur déclaration comme suit :

type nom_variable = valeur;

 

Exemples :
extern int a = 8, b = 9;    // déclaration de a et b. 
int d = 5, f = 4;           // définition et initialisation d et f. 
byte x = 6;                //  définition et initialisation de x. 
char z = 'z';               // la variable z a la valeur 'z'.

Pour la définition sans initialisation: les variables statique sont implicitement initialisées avec NULL (tous les octets ont la valeur 0); La valeur initiale de toutes les autres variables n’est pas définie.
 
 

Déclaration d’une variables en C

La déclaration d’une variables assure au compilateur qu’il existe une variable avec le type et le nom donnés afin que le compilateur puisse procéder à une compilation ultérieure sans exiger le détail complet de la variable. Une définition de variable a une signification seulement au moment de la compilation.

Une déclaration de variable est utile lorsque vous utilisez plusieurs fichiers et vous définissez votre variable dans l’un des fichiers qui seront disponibles au moment de la liaison dynamique. Vous utiliserez le mot-clé extern pour déclarer une variable à n’importe quel endroit. Bien que vous puissiez déclarer une variable plusieurs fois dans votre programme C, elle ne peut être définie qu’une seule fois dans un fichier, dans une fonction ou dans un bloc de code.

Exemples :

Essayez l’exemple suivant, où les variables ont été déclarées en haut, mais elles ont été définies et initialisées à l’intérieur de la fonction principale.

 #include <stdio.h>

// La declaration des variables :
extern int a, b;
extern int c;
extern float f;

int main () {

   /* La definition des variables :*/
   int a, b;
   int c;
   float f;
 
   /* Initialisation*/
   a = 10;
   b = 20;
  
   c = a + b;
   printf("la valeur de c est : %d n", c);

   f = 70.0/3.0;
   printf("la valeur de f est : %f n", f);
 
   return 0;
}

Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant

la valeur de c est : 30
la valeur de f est : 23.333334

Le même concept s’applique à la déclaration d’une fonction. Par exemple

// Déclaration de la fonction
int func();

int main() {
   //Appel de la fonction
   int i = func();
}

// Définition de la fonction
int func() {
   return 0;
}

 
 

Lvalues et Rvalues en C

Il existe deux types d ‘expressions dans C :

  • Lvalue : Les expressions qui se réfèrent à un emplacement de mémoire sont appelées expressions « lvalue ». Une valeur peut apparaître sur le côté gauche ou le côté droit d’une affectation.
  • Rvalue : Fait référence à une valeur de données qui est stockée à une certaine adresse en mémoire. rvalue est une expression qui ne peut pas être affectée à une valeur et qui signifie qu’une rvalue peut être sur le côté droit mais pas sur le côté gauche d’une affectation.

Les variables sont lvalues et peuvent donc apparaître sur le côté gauche d’une affectation. Les littéraux numériques sont rvalues et ils ne peuvent donc pas être affectés et ne peuvent pas apparaître sur le côté gauche. Jetez un coup d’œil aux déclarations valides et invalides suivantes

int g = 20; // expression valide
10 = 20; // expression invalide; va générer une erreur

 
 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *