Constant dans le langage C

Constant dans le langage C
Toute langue comprend plusieurs lettres appelées alphabet. Ces alphabets sont appelés identificateurs dans la langue C.

Les identifiants ont trois types:

  1. Constant
  2. Variable
  3. Mot-clé

Discutons de constant. En général, tout ce qui n'est pas changé est constant. Mais en C, un logiciel gère toujours des données ou des informations. Cette information est appelée constante.

Data = information = constante

Const est un mot-clé dans le langage C. Il est identifié comme un qualificatif. Un constante constant peut être appliqué à la déclaration de toute variable pour spécifier que sa valeur ne sera pas modifiée.

Classification de constante

Il existe deux types de constants présents dans la langue C. Ils sont:

  1. Constante primaire
  2. Constante secondaire

1. Constante primaire

La constante primaire a trois types:

  • Entier

Exemple: -55, 26, 0 etc.

  • Réel

Exemple: 19.6, -1.65, 3.1 etc.

  • Personnage

Exemple: 'C', 'J', '+', '3', etc.

2. Constante secondaire

Ce sont différents types de constante secondaire:

  1. Déployer
  2. Chaîne
  3. Aiguille
  4. syndicat
  5. Structure
  6. Énumérateurs

Fait historique:

Const n'était pas applicable dans l'utilisation précoce du langage C; Le concept a été emprunté à C++.

Usage:

Le mot-clé const peut être appliqué à toute déclaration, y compris la structure, les syndicats et les types énumérés ou les noms de typedef. Le processus d'application du mot-clé const à une déclaration est appelé «qualification de la déclaration». Const signifie que quelque chose n'est pas modifiable.

Exemple de programmation 1:

#inclure
int main ()

const int x = 5;
x ++;
printf ("x =% d", x);
retour 0;

Sortir:

Explication:

Le programme a produit une erreur de compilateur car nous avons essayé d'incrémenter la valeur de x. X est constant et nous ne pouvons pas modifier les valeurs d'une constante.

Exemple de programmation 2:

#inclure
int main ()

const int x;
printf ("x =% d", x);
retour 0;

Sortir:

Explication:

Dans cet exemple, nous avons déclaré une variable constante «x» sans initialisation. Si nous n'initialisons pas au moment de la déclaration pour une constante, la valeur des ordures sera attribuée à x et elle ne sera pas initialisée. Pour cette variable constante, nous devons initialiser au moment de la déclaration. Dans ce programme particulier, la valeur des ordures de constante x est nul.

Exemple de programmation 3:

#inclure
int main ()

const int x = 5;
int * p;
p = & x;
printf ("x =% d", x);
++ (* p);
printf ("x =% d", x);
retour 0;

Sortir:

Explication:

Dans ce programme, nous avons essayé de modifier la valeur d'une constante à l'aide d'un pointeur. Le pointeur se réfère à l'adresse d'une constante.

Nous pouvons modifier la valeur de toute variable constante lorsque nous déclarons un pointeur «int * p». P est un pointeur qui pointe vers le type int d'une variable.

Si nous modifions via la variable «x» en déclarant un pointeur «++ (* p) -> * p», le résultat est un bloc. Mais si nous modifions via la variable «P», une erreur se produira.

Les valeurs constantes restent inchangées tout au long du programme, mais nous pouvons modifier la valeur d'une constante à travers un pointeur.

Exemple de programmation 4:

#inclure
int main ()

const int x = 5;
const int * p; // pointeur vers const
p = & x;
printf ("x =% d", x);
++ (* p);
printf ("x =% d", x);
retour 0;

Sortir:

Explication:

Dans cet exemple de programmation, nous avons utilisé un autre pointeur const. En utilisant un pointeur const, nous ne pouvons pas modifier la valeur d'un pointeur. Cela signifie que nous ne pouvons pas déclarer un pointeur «p ++» car il n'est pas constant et la variable qu'il pointe est constante. Par conséquent, un pointeur «++ (* p)» n'est pas applicable. Pour déclarer un pointeur de const vers const, le pointeur doit être un const et la variable IT pointe est également un const.

Comment déclarer un pointeur:

const int * p;
int const * p;

Les deux sont les pointeurs à constante.

Comment déclarer un pointeur const:

int * const p;

Exemple de programmation 5:

#inclure
int main ()

const int x = 5;
int * const p;
p = & x;
printf ("x =% d", x);
++ (* p);
printf ("x =% d", x);
retour 0;

Sortir:

Explication:

Dans cet exemple de programmation, la valeur de x est un const. Le pointeur lui-même est un const. La modification de la valeur d'un pointeur n'est pas possible; Une erreur se produira.

La variable déclarée est «int * const p = & x» où «p» est initialisé au moment de la déclaration.

Le pointeur lui-même est un const mais le pointeur vers const n'est pas applicable.

Exemple de programmation 6:

#inclure
int main ()

const int x = 5;
int * const p = & x;
printf ("x =% d", x);
++P;
printf ("x =% d", x);
retour 0;

Sortir:

Explication:

Ce programme particulier ne peut pas être compilé. Puisqu'il s'agit d'un Pointer const, nous ne pouvons pas modifier la valeur de «P».

Exemple de programmation 7:

#inclure
int main ()

const int x = 5;
const int * const p = & x;
printf ("x =% d", x);
++(* p);
printf ("x =% d", x);
retour 0;

Sortir:

Explication:

Une erreur de temps de compilation s'est produite dans ce programme particulier parce que nous ne pouvons pas modifier la valeur de «P» car il s'agit d'un pointeur constant vers const.

Conclusion

Constant est un puissant concept de base de la langue C. Il existe de nombreux types de constants présents dans la langue C. Sans le concept de constante, les données ou les informations ne peuvent pas être gérées correctement par le logiciel de la langue C. Des articles connexes sont disponibles sur le site Web.