Константи в C – це змінні, доступні лише для читання, значення яких не можна змінювати після того, як вони оголошені в програмі на C. Типом константи може бути ціла константа, константа з плаваючим вказівником, рядкова константа або символьна константа. У мові C, конст Ключове слово використовується для визначення констант.
У цій статті ми обговоримо константи в програмуванні на C, способи визначення констант у C, типи констант у C, їхні властивості та різницю між літералами та константами.
Що таке константа в C?
Як випливає з назви, константа в C - це змінна, яку неможливо змінити після того, як вона оголошена в програмі. Ми не можемо змінити значення постійних змінних після їх визначення.
Як визначити константу в C?
Ми визначаємо константу мовою C за допомогою конст ключове слово. Ключове слово const, також відоме як кваліфікатор типу const, розміщується на початку оголошення змінної, щоб оголосити цю змінну як константу.
актор говінда
Синтаксис для визначення константи
const data_type var_name = value ;>

Приклад констант у 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;> }> |
>
>Вихід
Printing value of Integer Constant: 25 Printing value of Character Constant: A Printing value of Float Constant: 15.660000>
Одне, що слід зазначити, це те, що ми повинні ініціалізувати постійні змінні під час оголошення . В іншому випадку змінна зберігатиме деяке сміттєве значення, і ми не зможемо його змінити. На наступному зображенні описано приклади неправильних і правильних визначень змінних.

Типи констант у C
Тип константи такий самий, як і тип даних змінних. Нижче наведено список типів констант
- Ціла константа
- Символьна константа
- Константа з плаваючою комою
- Константа подвійної точності з плаваючою комою
- Константа масиву
- Структурна константа
Нам просто потрібно додати ключове слово const на початку оголошення змінної.
Властивості константи в C
Важливі властивості постійних змінних у C, визначені за допомогою ключового слова const, такі:
1. Ініціалізація з оголошенням
Ми можемо ініціалізувати постійну змінну в C лише під час її оголошення. Інакше він зберігатиме значення сміття.
2. Незмінність
Константні змінні в c є незмінними після його визначення, тобто їх можна ініціалізувати лише один раз у всій програмі. Після цього ми не зможемо змінити значення, що зберігається в цій змінній.
C
verilog завжди
// 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;> }> |
>
>
Вихід
In function 'main': 10:9: error: assignment of read-only variable 'var' 10 | var = 20; | ^>
Різниця між константами та літералами
Константу та літерали часто плутають як одне й те саме. Але в мові C це різні сутності та мають різну семантику. У наступній таблиці наведено відмінності між константами та літералами в C:
| Постійний | Літерали |
|---|---|
| Константи - це змінні, які не можна змінювати після оголошення. | Літерали — це фіксовані значення, які визначають себе. |
| Константи визначаються за допомогою ключового слова const у C. Вони зберігають у собі літеральні значення. | Вони самі є значеннями, які присвоюються змінним або константам. |
| Ми можемо визначити адресу констант. | Ми не можемо визначити адресу літералу, крім рядкового літералу. |
| Вони є цінностями. | Вони є r-цінностями. |
| Приклад: const int c = 20. | Приклад: 24, 15.5, «a», Geeks тощо. |
Визначення константи за допомогою препроцесора #define
Ми також можемо визначити константу в C за допомогою #визначити препроцесор . Константи, визначені за допомогою #define, є макросами, які поводяться як константи. Ці константи не обробляються компілятором, вони обробляються препроцесором і замінюються їх значенням перед компіляцією.
#define const_name value>
Приклад константного макросу
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;> }> |
>
>Вихід
The value of pi: 3.14>
Примітка: Цей метод визначення константи не є кращим, оскільки він може створити помилки та ускладнити підтримку коду.
Поширені запитання про константи C
Q1. Визначте константи C.
відповідь:
Константи в C - це незмінні змінні, значення яких не можна змінити після того, як вони оголошені в програмі на C.
віл проти бика
Q2. Яке використання ключового слова const?»
відповідь:
Ключове слово const — це кваліфікатор, який використовується для оголошення постійної змінної в мові C.
Q3. Чи можемо ми ініціалізувати постійну змінну після оголошення?
відповідь:
Ні, ми не можемо ініціалізувати постійну змінну після її оголошення.
Q4. Як правильно оголосити константу в C?
відповідь:
Правильний спосіб оголосити константу в C - це завжди ініціалізувати константну змінну під час оголошення.
Q5. Яка різниця між константою, визначеною за допомогою кваліфікатора const, і #define?
відповідь:
У наведеній нижче таблиці перераховано відмінності між константами, визначеними за допомогою кваліфікатора const і #define у C:
Константи за допомогою const Константи з використанням #define Це змінні, які є незмінними Це макроси, які замінюються їх значенням. Вони обробляються компілятором. Вони обробляються препроцесором. Синтаксис: конст ім'я типу = значення ; Синтаксис: #визначити значення імені
Q6. Чи є спосіб змінити значення постійної змінної в C?
відповідь:
Так, ми можемо скористатися лазівкою, створеною покажчиками, щоб змінити значення змінної, оголошеної як константа в C. Наведена нижче програма на C демонструє, як це зробити.
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;>}>>>ВихідInitial Value of Constant: 10 Final Value of Constant: 500>Пов’язана стаття – Const Qualifier в C