Konštanty v C sú premenné len na čítanie, ktorých hodnoty nie je možné zmeniť, keď sú deklarované v programe C. Typ konštanty môže byť celočíselná konštanta, konštanta s pohyblivým ukazovateľom, reťazcová konštanta alebo znaková konštanta. V jazyku C je konšt kľúčové slovo sa používa na definovanie konštánt.
V tomto článku budeme diskutovať o konštantách v programovaní C, spôsoboch definovania konštánt v C, typoch konštánt v C, ich vlastnostiach a rozdieloch medzi literálmi a konštantami.
Čo je konštanta v C?
Ako už názov napovedá, konštanta v C je premenná, ktorú nie je možné zmeniť, keď je deklarovaná v programe. Hodnotu konštantných premenných po ich definovaní nemôžeme nijako meniť.
Ako definovať konštantu v C?
Konštantu v jazyku C definujeme pomocou konšt kľúčové slovo. Tiež známy ako kvalifikátor typu const, kľúčové slovo const sa umiestni na začiatok deklarácie premennej, aby deklarovalo túto premennú ako konštantu.
Syntax na definovanie konštanty
const data_type var_name = value ;>

Príklad konštánt v 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;> }> |
ak rudyardom kiplingom súhrn
>
>Výkon
Printing value of Integer Constant: 25 Printing value of Character Constant: A Printing value of Float Constant: 15.660000>
Jedna vec, ktorú treba poznamenať, je, že musíme inicializujte konštantné premenné pri deklarácii . V opačnom prípade bude premenná ukladať určitú hodnotu odpadu a nebudeme ju môcť zmeniť. Nasledujúci obrázok popisuje príklady nesprávnych a správnych definícií premenných.

hĺbka algoritmu prvé vyhľadávanie
Typy konštánt v C
Typ konštanty je rovnaký ako dátový typ premenných. Nasleduje zoznam typov konštánt
- Celočíselná konštanta
- Charakter konštantný
- Konštanta s pohyblivou rádovou čiarkou
- Dvojitá presnosť s pohyblivou rádovou čiarkou
- Array Constant
- Konštantná štruktúra
Musíme len pridať kľúčové slovo const na začiatok deklarácie premennej.
Vlastnosti konštanty v C
Dôležité vlastnosti konštantných premenných v C definované pomocou kľúčového slova const sú nasledovné:
1. Inicializácia s deklaráciou
Konštantnú premennú môžeme inicializovať iba v C v čase jej deklarácie. V opačnom prípade uloží hodnotu odpadu.
2. Nemennosť
Konštantné premenné v c sú po svojej definícii nemenné, t.j. môžu byť inicializované iba raz v celom programe. Potom už nemôžeme upraviť hodnotu uloženú v tejto premennej.
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;> }> |
>
>
Výkon
prečo rozhranie markerov v jave
In function 'main': 10:9: error: assignment of read-only variable 'var' 10 | var = 20; | ^>
Rozdiel medzi konštantami a literálmi
Konštanta a literály sa často zamieňajú za to isté. Ale v jazyku C sú to rôzne entity a majú odlišnú sémantiku. Nasledujúca tabuľka uvádza rozdiely medzi konštantami a literálmi v C:
| Neustále | Doslovy |
|---|---|
| Konštanty sú premenné, ktoré sa po deklarovaní nedajú zmeniť. | Literály sú pevné hodnoty, ktoré samy seba definujú. |
| Konštanty sú definované pomocou kľúčového slova const v C. Ukladajú doslovné hodnoty v sebe. | Samotné sú hodnotami, ktoré sú priradené premenným alebo konštantám. |
| Môžeme určiť adresu konštánt. | Nemôžeme určiť adresu literálu okrem reťazcového literálu. |
| Sú to hodnoty. | Sú to hodnoty. |
| Príklad: const int c = 20. | Príklad: 24, 15,5, „a“, Geeks atď. |
Definovanie konštanty pomocou #define Preprocessor
Konštantu v C môžeme definovať aj pomocou #define preprocesor . Konštanty definované pomocou #define sú makrá, ktoré sa správajú ako konštanta. Tieto konštanty nespracúva kompilátor, spracuje ich preprocesor a pred kompiláciou ich nahradí ich hodnota.
#define const_name value>
Príklad konštantného makra
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;> }> |
>
>Výkon
The value of pi: 3.14>
Poznámka: Táto metóda na definovanie konštanty nie je preferovaná, pretože môže spôsobiť chyby a sťažiť údržbu kódu.
IMPS hry pre android
Časté otázky o C konštantách
Q1. Definujte konštanty C.
odpoveď:
Konštanty v C sú nemenné premenné, ktorých hodnoty nie je možné zmeniť, keď sú deklarované v programe C.
Q2. Aké je použitie kľúčového slova const?‘
odpoveď:
Kľúčové slovo const je kvalifikátor, ktorý sa používa na deklarovanie konštantnej premennej v jazyku C.
Q3. Môžeme po vyhlásení inicializovať konštantnú premennú?
odpoveď:
Nie, nemôžeme inicializovať konštantnú premennú, akonáhle je deklarovaná.
Q4. Aký je správny spôsob, ako deklarovať konštantu v C?
odpoveď:
Správny spôsob, ako deklarovať konštantu v C, je vždy inicializovať konštantnú premennú, keď deklarujeme.
Q5. Aký je rozdiel medzi konštantou definovanou pomocou kvalifikátora const a #define?
odpoveď:
V nasledujúcej tabuľke sú uvedené rozdiely medzi konštantami definovanými pomocou kvalifikátora const a #define v jazyku C:
Konštanty pomocou konšt Konštanty pomocou #define Sú to premenné, ktoré sú nemenné Sú to makrá, ktoré sú nahradené ich hodnotou. Spravuje ich kompilátor. Spravuje ich preprocesor. Syntax: konšt typ meno = hodnota ; Syntax: #definovať hodnotu názvu
Q6. Existuje nejaký spôsob, ako zmeniť hodnotu konštantnej premennej v C?
odpoveď:
Áno, môžeme využiť medzeru vytvorenú ukazovateľmi na zmenu hodnoty premennej deklarovanej ako konštanta v C. Nižšie uvedený program C ukazuje, ako to urobiť.
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;>}>mylivecricket.>>VýkonInitial Value of Constant: 10 Final Value of Constant: 500>Súvisiaci článok – Kvalifikácia Const v C