logo

Constantes en C

Les constantes en C sont les variables en lecture seule dont les valeurs ne peuvent être modifiées une fois déclarées dans le programme C. Le type de constante peut être une constante entière, une constante de pointeur flottant, une constante de chaîne ou une constante de caractère. En langage C, le const Le mot-clé est utilisé pour définir les constantes.

Dans cet article, nous discuterons des constantes en programmation C, des manières de définir des constantes en C, des types de constantes en C, de leurs propriétés et de la différence entre les littéraux et les constantes.



Qu’est-ce qu’une constante en C ?

Comme son nom l’indique, une constante en C est une variable qui ne peut plus être modifiée une fois déclarée dans le programme. Nous ne pouvons apporter aucune modification à la valeur des variables constantes une fois qu’elles sont définies.

Comment définir une constante en C ?

On définit une constante en langage C en utilisant la const mot-clé. Également connu sous le nom de qualificatif de type const, le mot clé const est placé au début de la déclaration de variable pour déclarer cette variable comme constante.

Syntaxe pour définir une constante

const   data_type var_name   =   value  ;>

syntaxe des constantes en c



Exemple de constantes en C

C

automates finis déterministes






// C program to illustrate constant variable definition> #include> int> main()> {> >// defining integer constant using const keyword> >const> int> int_const = 25;> >// defining character constant using const keyword> >const> char> char_const =>'A'>;> >// defining float constant using const keyword> >const> float> float_const = 15.66;> >printf>(>'Printing value of Integer Constant: %d '>,> >int_const);> >printf>(>'Printing value of Character Constant: %c '>,> >char_const);> >printf>(>'Printing value of Float Constant: %f'>,> >float_const);> >return> 0;> }>

>

>

Sortir

Printing value of Integer Constant: 25 Printing value of Character Constant: A Printing value of Float Constant: 15.660000>

Une chose à noter ici est que nous devons initialiser les variables constantes lors de la déclaration . Sinon, la variable stockera une valeur inutile et nous ne pourrons pas la modifier. L'image suivante décrit des exemples de définitions de variables incorrectes et correctes.

bonne façon de déclarer des constantes en c

exemple java lambda

Types de constantes en C

Le type de la constante est le même que le type de données des variables. Voici la liste des types de constantes

  • Constante entière
  • Constante de caractère
  • Constante à virgule flottante
  • Constante à virgule flottante double précision
  • Constante de tableau
  • Constante de structure

Il suffit d'ajouter le mot-clé const au début de la déclaration de la variable.

Propriétés de la constante en C

Les propriétés importantes des variables constantes en C définies à l'aide du mot-clé const sont les suivantes :

1. Initialisation avec déclaration

On ne peut initialiser la variable constante en C qu'au moment de sa déclaration. Sinon, il stockera la valeur des déchets.

2. Immuabilité

Les variables constantes dans c sont immuables après sa définition, c'est-à-dire qu'elles ne peuvent être initialisées qu'une seule fois dans tout le programme. Après cela, nous ne pouvons pas modifier la valeur stockée dans cette variable.

C




// C Program to demonstrate the behaviour of constant> // variable> #include> int> main()> {> >// declaring a constant variable> >const> int> var;> >// initializing constant variable var after declaration> >var = 20;> >printf>(>'Value of var: %d'>, var);> >return> 0;> }>

>

bœuf contre taureau
>

Sortir

In function 'main': 10:9: error: assignment of read-only variable 'var' 10 | var = 20;  | ^>

Différence entre constantes et littéraux

La constante et les littéraux sont souvent confondus. Mais en langage C, ce sont des entités différentes et ont une sémantique différente. Le tableau suivant répertorie les différences entre les constantes et les littéraux en C :

Constante

Littéraux

Les constantes sont des variables qui ne peuvent être modifiées une fois déclarées. Les littéraux sont les valeurs fixes qui se définissent.
Les constantes sont définies à l'aide du mot-clé const en C. Elles stockent elles-mêmes des valeurs littérales. Ce sont elles-mêmes les valeurs attribuées aux variables ou constantes.
Nous pouvons déterminer l'adresse des constantes. Nous ne pouvons pas déterminer l’adresse d’un littéral à l’exception d’une chaîne littérale.
Ce sont des valeurs. Ce sont des valeurs.
Exemple : const int c = 20. Exemple : 24,15,5, 'a', Geeks, etc.

Définition d'une constante à l'aide du préprocesseur #define

On peut aussi définir une constante en C en utilisant #définir le préprocesseur . Les constantes définies à l'aide de #define sont des macros qui se comportent comme une constante. Ces constantes ne sont pas gérées par le compilateur, elles sont gérées par le préprocesseur et sont remplacées par leur valeur avant compilation.

  #define     const_name     value>

Exemple de macro constante

C




// C Program to define a constant using #define> #include> #define pi 3.14> int> main()> {> >printf>(>'The value of pi: %.2f'>, pi);> >return> 0;> }>

>

>

Sortir

The value of pi: 3.14>

Note: Cette méthode de définition de constante n'est pas préférée car elle peut introduire des bugs et rendre le code difficile à maintenir.

base de données

FAQ sur les constantes C

T1. Définissez les constantes C.

Répondre:

Les constantes en C sont les variables immuables dont les valeurs ne peuvent pas être modifiées une fois déclarées dans le programme C.

Q2. À quoi sert le mot-clé const ? »

Répondre:

Le mot-clé const est le qualificatif utilisé pour déclarer la variable constante en langage C.

Q3. Pouvons-nous initialiser la variable constante après la déclaration ?

Répondre:

Non, nous ne pouvons pas initialiser la variable constante une fois qu'elle est déclarée.

Q4. Quelle est la bonne façon de déclarer la constante en C ?

Répondre:

La bonne façon de déclarer une constante en C est de toujours initialiser la variable constante lorsque nous déclarons.

Q5. Quelle est la différence entre une constante définie à l'aide du qualificatif const et #define ?

Répondre:

Le tableau suivant répertorie les différences entre les constantes définies à l'aide du qualificatif const et #define en C :

Constantes utilisant const Constantes utilisant #define
Ce sont les variables qui sont immuables Ce sont les macros qui sont remplacées par leur valeur.
Ils sont gérés par le compilateur. Ils sont gérés par le préprocesseur.
Syntaxe: const tapez nom = valeur ; Syntaxe: #définir valeur du nom

Q6. Existe-t-il un moyen de modifier la valeur d’une variable constante en C ?

Répondre:

Oui, nous pouvons profiter de la faille créée par les pointeurs pour modifier la valeur d'une variable déclarée comme constante en C. Le programme C ci-dessous montre comment procéder.

C




// C Program to change the value of constant variable> #include> int> main()> {> >// defining an integer constant> >const> int> var = 10;> >printf>(>'Initial Value of Constant: %d '>, var);> >// defining a pointer to that const variable> >int>* ptr = &var;> >// changing value> >*ptr = 500;> >printf>(>'Final Value of Constant: %d'>, var);> >return> 0;> }>

np zéros
>

>

Sortir

Initial Value of Constant: 10 Final Value of Constant: 500>

Article associé - Qualificateur Const en C