Добавил:
study@slavapmk.ru Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Все Лекции

.pdf
Скачиваний:
0
Добавлен:
12.05.2026
Размер:
15.98 Mб
Скачать

Переменные и типы данных

Чтобы переменную можно было использовать в программе, она должна быть предварительно объявлена.

Переменная обладает именем, размером и рядом других атрибутов (таких, как видимость, время существования и т.д.).

При объявлении переменной для нее резервируется некоторая область памяти, размер которой зависит от конкретного типа переменной.

Размер одного и того же типа данных может отличаться на компьютерах разных платформ, а также может зависеть от используемой операционной системы.

21

Переменные и типы данных

Стек — это область оперативной памяти, которая создаётся для каждого потока.

22

Переменные и типы данных

Куча — это хранилище данных, которое допускает динамическое выделение памяти, это просто склад для переменных.

23

Переменные и типы данных

• Базовые типы данных С/С++ для ПК

Тип

Размер, байт

Значение

 

 

 

 

bool

1

 

true или false

 

 

 

 

unsigned short int

2

 

от 0 до 65 535

 

 

 

 

short int

2

 

от-32 768 до 32 767

 

 

 

 

unsigned long int

4

 

от 0 до 4 294 967 295

 

 

 

 

long int

4

 

от -2 147 483 648 до 2 147 483 647

 

 

 

 

int (16 разрядов)

2

 

от-32 768 до 32 767

 

 

 

 

int (32 разряда)

4

 

от-2 147 483 648 до 2 147 483 647

 

 

 

 

unsigned int (16

2

 

от 0 до 65 535

разрядов)

 

 

 

 

 

 

 

unsigned int (32 разряда)

4

 

от 0 до 4 294 967 295

 

 

 

 

char

1

 

от 0 до 256

 

 

 

 

float

4

 

от 1.2е-38 до 3.4е38

 

 

 

 

double

8

 

от 2.2е-308 до 1.8е308

 

 

 

 

void

2

или 4

-

 

 

 

 

24

Переменные и типы данных

Программы на языке С++ являются переносимыми.

Переносимость означает, что программы, написанные для работы на компьютерах одного типа, будут работать и на компьютерах другого типа.

При этом переменные одного и того же типа могут иметь разный размер в зависимости от того, на каком компьютере и в какой операционной системе они используются.

Определить размер переменной любого типа данных (как

базового, так и производного) можно с помощью оператора размера sizeof.

Данный оператор может быть применен к константе, типу и

переменной. int main() {

cout << "Size of int type: "; cout << sizeof(int) << '\n';

25

Переменные и типы данных

Объявление переменной начинается с ключевого слова, определяющего его тип, за которым следует собственно имя переменной и (необязательно) инициализация - присвоение начального значения.

Одно ключевое слово позволяет объявить несколько переменных.

Для большинства языков программирования важно учитывать регистр букв (Abc и abc - не одно и то же)!

26

Область видимости переменных

Каждая переменная характеризуется областью действия, областью видимости и временем жизни.

Под областью действия переменной понимают область программы, в которой переменная доступна для использования.

С этим понятием тесно связано понятие области видимости переменной. Если переменная выходит из области действия, она становится невидимой.

Временем жизни переменной называется интервал выполнения программы, в течение которого она существует.

27

Область видимости переменных

Переменные могут быть объявлены как внутри тела какой-нибудь функции, так и за пределам любой из них.

Переменные, объявленные внутри тела функции, называются локальными.

28

Локальные переменные

Локальные переменные размещаются в стеке программы и действуют только внутри той функции, в которой объявлены.

Как только управление возвращается вызываемой функции, память, отводимая под локальные переменные, освобождается.

29

Локальные переменные

Локальные переменные имеют своей областью видимости функцию или блок, в которых они объявлены.

В то же время область действия локальной переменной может исключать внутренний блок, если в нем объявлена переменная с тем же именем.

Время жизни локальной переменной определяется временем выполнения блока или функции, в которых она объявлена.

30