Програмування на C #5 — Типи даних та змінні

C пропонує кілька вбудованих типів даних для роботи:

Примітивні типи даних

Примітивні типи даних формують основні будівельні блоки даних у C:

| **Тип даних** | **Опис** | **Розмір (типовий)** | **Діапазон (32-бітна система)** | **Приклад** |  
|---------------|-------------------------------|------------------------|---------------------------------------|-----------------------|  
| `int` | Ціле число (ціле число) | 4 байти | −2147483648 до 2147483647 | `int age = 25;` |  
| `float` | Число з плаваючою комою | 4 байти | ~±1.2E-38 до ~±3.4E+38 | `float height = 5.9;`|   
| `double` | Подвійна точність з плаваючою комою | 8 байт | ~±2.3E-308 до ~±1.7E+308 | `double pi = 3.14;` |   
| `char` | Один символ | 1 байт | 0 до 255 (значення ASCII) | `char grade = 'A';` |

Примітка: Розміри та діапазони можуть змінюватися залежно від архітектури системи (32-бітна або 64-бітна).

Виведені типи даних

Виведені типи даних створюються за допомогою примітивних типів:

  • Масиви: Колекція елементів одного типу, що зберігаються послідовно в пам'яті.
  • Вказівники: Змінні, що зберігають адресу іншої змінної.
  • Структури: Спосіб групувати змінні різних типів.
  • Об'єднання: Пам'ятно-ефективна структура даних, де всі члени використовують одну й ту саму пам'ять.

Тип Void

  • Представляє відсутність будь-якого типу.
  • Зазвичай використовується для функцій, які не повертають значення (void).

Перелічувані типи (enum)

  • Дозволяє визначати змінні, які можуть мати лише попередньо визначені значення.
  • Приклад:
enum Days {MON, TUE, WED, THU, FRI};  
enum Days today = MON;

Змінні в C

Змінна — це іменоване місце в пам'яті, яке використовується для зберігання даних. Тип даних змінної визначає, який тип значення вона може зберігати та скільки пам'яті для цього потрібно.

Оголошення змінних

Загальний синтаксис для оголошення змінних:

 ;

Приклади:

int number;  
float salary;  
char initial;

Ініціалізація змінних

Змінним можна присвоїти початкове значення під час оголошення:

int age = 30;  
float pi = 3.1415;  
char grade = 'A';

Оголошення кількох змінних

Ви можете оголосити кілька змінних одного типу в одному виразі:

int x = 5, y = 10, z = 15;

Область видимості та життєвий цикл змінних

Локальні змінні

  • Оголошуються всередині функції або блоку.
  • Доступні тільки в межах цієї функції або блоку.
  • Пам'ять виділяється під час виклику функції і звільняється, коли функція завершується.

Приклад:

void display() {  
 int localVar = 10;  
 printf("Local Variable: %d\n", localVar);  
}

Глобальні змінні

  • Оголошуються поза всіма функціями.
  • Доступні всім функціям у програмі.
  • Зберігають своє значення протягом усього виконання програми.

Приклад:

int globalVar = 20;
void display() {  
 printf("Global Variable: %d\n", globalVar);  
}

Статичні змінні

  • Зберігають своє значення між викликами функцій.
  • Ініціалізуються лише один раз.

Приклад:

void display() {  
 static int count = 0;  
 count++;  
 printf("Static Variable: %d\n", count);  
}

Змінні extern

  • Оголошуються за допомогою ключового слова extern.
  • Вказують на глобальну змінну, визначену в іншому файлі.

Приклад:

extern int globalVar;

Константи в C

Константа — це значення, яке не може бути змінене під час виконання програми.
Є два основні способи визначити константи:

Використовуючи ключове слово const

const float PI = 3.14159;

Використовуючи директиви препроцесора

#define PI 3.14159

Константи препроцесора замінюються їх значеннями під час компіляції, що робить їх швидшими, але менш гнучкими порівняно з const.

Приклади та практика

Приклад 1: Використання змінних

#include 
int main() {  
 int age = 25;  
 float height = 5.9;  
 char grade = 'A'; printf("Age: %d\n", age);  
 printf("Height: %.1f\n", height);  
 printf("Grade: %c\n", grade); return 0;  
}

Вивід:

Age: 25  
Height: 5.9  
Grade: A

Приклад 2: Область видимості змінних

#include 
int globalVar = 10; // Глобальна змінна
void display() {  
 static int staticVar = 0; // Статична змінна  
 staticVar++;  
 printf("Static Variable: %d\n", staticVar);  
}
int main() {  
 int localVar = 5; // Локальна змінна 
 printf("Global Variable: %d\n", globalVar);  
 printf("Local Variable: %d\n", localVar); 
 display();  
 display(); 
 return 0;  
}

Вивід:

Global Variable: 10  
Local Variable: 5  
Static Variable: 1  
Static Variable: 2

Приклад 3: Константи

#include   
#define PI 3.14159
int main() {  
 const float gravity = 9.8; printf("Value of PI: %.5f\n", PI);  
 printf("Value of Gravity: %.1f\n", gravity); return 0;  
}

Вивід:

Value of PI: 3.14159  
Value of Gravity: 9.8

Що далі?

У наступному пості ми розглянемо оператори та вирази, які є інструментами для виконання обчислень, порівнянь та інших операцій у програмах на C.

Залишайтеся з нами для нових інсайтів!

Перекладено з: C Programming #5 — Data Types and Variables

Leave a Reply

Your email address will not be published. Required fields are marked *