logo

Constants en C

Les constants en C són les variables de només lectura els valors de les quals no es poden modificar un cop s'han declarat al programa C. El tipus de constant pot ser una constant entera, una constant de punter flotant, una constant de cadena o una constant de caràcter. En llenguatge C, el const La paraula clau s'utilitza per definir les constants.

En aquest article, parlarem sobre les constants en programació C, maneres de definir constants en C, tipus de constants en C, les seves propietats i la diferència entre literals i constants.



Què és una constant en C?

Com el seu nom indica, una constant en C és una variable que no es pot modificar un cop declarada al programa. No podem fer cap canvi en el valor de les variables constants després de definir-les.

Com definir una constant en C?

Definim una constant en llenguatge C utilitzant el const paraula clau. També conegut com a qualificador de tipus const, la paraula clau const es col·loca a l'inici de la declaració de variables per declarar aquesta variable com a constant.

Sintaxi per definir constant

const   data_type var_name   =   value  ;>

sintaxi de constants en c



Exemple de constants en C

C






// 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;> }>

>

>

Sortida

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

Una cosa a destacar aquí és que hem de fer-ho inicialitzar les variables constants a la declaració . En cas contrari, la variable emmagatzemarà algun valor d'escombraries i no podrem canviar-lo. La imatge següent descriu exemples de definicions de variables incorrectes i correctes.

manera correcta de declarar constants en c

Tipus de constants en C

El tipus de constant és el mateix que el tipus de dades de les variables. A continuació es mostra la llista dels tipus de constants

  • Constant entera
  • Constante de caràcter
  • Constant de coma flotant
  • Constant de punt flotant de doble precisió
  • Constant de matriu
  • Constant d'estructura

Només hem d'afegir la paraula clau const a l'inici de la declaració de la variable.

Propietats de la constant a C

Les propietats importants de les variables constants en C definides mitjançant la paraula clau const són les següents:

1. Inicialització amb Declaració

Només podem inicialitzar la variable constant en C en el moment de la seva declaració. En cas contrari, emmagatzemarà el valor d'escombraries.

2. Immutabilitat

Les variables constants en c són immutables després de la seva definició, és a dir, només es poden inicialitzar una vegada a tot el programa. Després d'això, no podem modificar el valor emmagatzemat dins d'aquesta 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;> }>

>

>

quan es va inventar l'escola

Sortida

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

Diferència entre constants i literals

La constant i els literals sovint es confonen com el mateix. Però en llenguatge C, són entitats diferents i tenen una semàntica diferent. La taula següent mostra les diferències entre les constants i els literals en C:

Constant

Literals

Les constants són variables que no es poden modificar un cop declarades. Els literals són els valors fixos que es defineixen.
Les constants es defineixen utilitzant la paraula clau const a C. Emmagatzemen valors literals en si mateixes. Ells mateixos són els valors que s'assignen a les variables o constants.
Podem determinar l'adreça de les constants. No podem determinar l'adreça d'un literal excepte el literal de cadena.
Són lvalors. Són valors r.
Exemple: const int c = 20. Exemple: 24,15.5, 'a', Geeks, etc.

Definició de constant utilitzant #define Preprocessor

També podem definir una constant en C utilitzant #definir preprocessador . Les constants definides amb #define són macros que es comporten com una constant. Aquestes constants no són gestionades pel compilador, són gestionades pel preprocessador i se substitueixen pel seu valor abans de la compilació.

  #define     const_name     value>

Exemple de macro constant

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;> }>

>

>

Sortida

The value of pi: 3.14>

Nota: Aquest mètode per definir constant no és preferit, ja que pot introduir errors i dificultar el manteniment del codi.

Preguntes freqüents sobre constants C

Q1. Definiu les constants C.

Resposta:

Les constants en C són les variables immutables els valors de les quals no es poden modificar un cop s'han declarat al programa C.

P2. Quin és l'ús de la paraula clau const?'

Resposta:

La paraula clau const és el qualificador que s'utilitza per declarar la variable constant en llenguatge C.

P3. Podem inicialitzar la variable constant després de la declaració?

Resposta:

mètode java

No, no podem inicialitzar la variable constant un cop declarada.

P4. Quina és la manera correcta de declarar la constant en C?

Resposta:

La manera correcta de declarar una constant en C és inicialitzar sempre la variable constant quan declarem.

P5. Quina diferència hi ha entre constant definida mitjançant el qualificador const i #define?

Resposta:

La taula següent enumera les diferències entre les constants definides mitjançant el qualificador const i #define en C:

Constants utilitzant const Constants utilitzant #define
Són les variables que són immutables Són les macros que es substitueixen pel seu valor.
Són gestionats pel compilador. Són gestionats pel preprocessador.
Sintaxi: const tipus nom = valor ; Sintaxi: #definir valor del nom

P6. Hi ha alguna manera de canviar el valor d'una variable constant a C?

Resposta:

Sí, podem aprofitar l'escletxa creada pels punters per canviar el valor d'una variable declarada com a constant en C. El programa C següent mostra com fer-ho.

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;> }>

>

>

Sortida

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

Article relacionat - Const Qualifier a C