Konstanterna i C är de skrivbara variablerna vars värden inte kan ändras när de väl har deklarerats i C-programmet. Typen av konstant kan vara en heltalskonstant, en flytande pekarkonstant, en strängkonstant eller en teckenkonstant. I C-språket konst nyckelord används för att definiera konstanterna.
I den här artikeln kommer vi att diskutera konstanterna i C-programmering, sätt att definiera konstanter i C, typer av konstanter i C, deras egenskaper och skillnaden mellan bokstaver och konstanter.
Vad är en konstant i C?
Som namnet antyder är en konstant i C en variabel som inte kan ändras när den väl har deklarerats i programmet. Vi kan inte göra någon förändring i värdet på de konstanta variablerna efter att de har definierats.
Hur definierar man konstant i C?
Vi definierar en konstant i C-språket med hjälp av konst nyckelord. Även känd som en kvalificerare av typen const placeras nyckelordet const i början av variabeldeklarationen för att deklarera variabeln som en konstant.
java 8 funktioner
Syntax för att definiera konstant
const data_type var_name = value ;>

Exempel på konstanter i 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;> }> |
>
>Produktion
Printing value of Integer Constant: 25 Printing value of Character Constant: A Printing value of Float Constant: 15.660000>
En sak att notera här är att vi måste initiera konstantvariablerna vid deklaration . Annars kommer variabeln att lagra ett skräpvärde och vi kommer inte att kunna ändra det. Följande bild beskriver exempel på felaktiga och korrekta variabeldefinitioner.

Typer av konstanter i C
Typen av konstanten är densamma som datatypen för variablerna. Följande är listan över typerna av konstanter
- Heltal konstant
- Karaktärskonstant
- Flytpunktskonstant
- Dubbel precision flytande punkt konstant
- Array Konstant
- Konstant struktur
Vi behöver bara lägga till nyckelordet const i början av variabeldeklarationen.
när kom vinst 7 ut
Egenskaper av konstant i C
De viktiga egenskaperna hos konstantvariabler i C definierade med nyckelordet const är följande:
1. Initiering med deklaration
Vi kan bara initiera konstantvariabeln i C vid tidpunkten för dess deklaration. Annars kommer den att lagra skräpvärdet.
2. Oföränderlighet
De konstanta variablerna i c är oföränderliga efter dess definition, det vill säga de kan initieras endast en gång i hela programmet. Efter det kan vi inte ändra värdet som lagras i den variabeln.
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;> }> |
>
>
Produktion
In function 'main': 10:9: error: assignment of read-only variable 'var' 10 | var = 20; | ^>
Skillnaden mellan konstanter och bokstaver
Konstanten och bokstavliga ord blandas ofta ihop som samma. Men i C-språket är de olika enheter och har olika semantik. Följande tabell listar skillnaderna mellan konstanterna och literalerna i C:
| Konstant | Bokstäver |
|---|---|
| Konstanter är variabler som inte kan ändras när de väl har deklarerats. | Literals är de fasta värden som definierar sig själva. |
| Konstanter definieras genom att använda nyckelordet const i C. De lagrar bokstavliga värden i sig själva. | De är själva de värden som tilldelas variablerna eller konstanterna. |
| Vi kan bestämma adressen för konstanter. | Vi kan inte bestämma adressen för en literal förutom strängliteral. |
| De är lvärden. | De är rvärden. |
| Exempel: const int c = 20. | Exempel: 24,15,5, 'a', nördar, etc. |
Definiera konstant med #define Preprocessor
Vi kan också definiera en konstant i C med hjälp av #define förprocessor . Konstanterna som definieras med #define är makron som beter sig som en konstant. Dessa konstanter hanteras inte av kompilatorn, de hanteras av förprocessorn och ersätts av deras värde före kompilering.
#define const_name value>
Exempel på konstant makro
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;> }> |
>
>Produktion
The value of pi: 3.14>
Notera: Denna metod för att definiera konstant är inte att föredra eftersom den kan introducera buggar och göra koden svår att underhålla.
windows kommando arp
Vanliga frågor om C-konstanter
Q1. Definiera C-konstanter.
Svar:
Konstanter i C är de oföränderliga variablerna vars värden inte kan ändras när de väl har deklarerats i C-programmet.
Q2. Vad är nyttan med nyckelordet const?'
Svar:
Nyckelordet const är kvalet som används för att deklarera konstantvariabeln i C-språk.
Q3. Kan vi initiera konstantvariabeln efter deklarationen?
Svar:
Nej, vi kan inte initiera konstantvariabeln när den väl har deklarerats.
Q4. Vad är det rätta sättet att deklarera konstanten i C?
Svar:
Det rätta sättet att deklarera en konstant i C är att alltid initialisera konstantvariabeln när vi deklarerar.
F5. Vad är skillnaden mellan konstant definierad med hjälp av const qualifier och #define?
Svar:
Följande tabell listar skillnaderna mellan konstanterna som definierats med const qualifier och #define i C:
Konstanter som använder konst Konstanter som använder #define De är variablerna som är oföränderliga De är makron som ersätts av deras värde. De hanteras av kompilatorn. De hanteras av förprocessorn. Syntax: konst typ namn = värde ; Syntax: #definiera namnvärde
F6. Finns det något sätt att ändra värdet på en konstant variabel i C?
Svar:
Ja, vi kan dra fördel av kryphålet som skapas av pekare för att ändra värdet på en variabel som deklareras som en konstant i C. C-programmet nedan visar hur man gör det.
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;>}>jasmine davis som barn>>ProduktionInitial Value of Constant: 10 Final Value of Constant: 500>Relaterad artikel – Const Qualifier i C