Типы данных в языке Си. Переименование типов. Объявление переменных. Идентификаторы. Комментарии. Примеры.



 Тип данных определяет:

внутреннее представление данных в памяти компьютера;

множество значений, которые могут принимать величины этого типа;

операции и функции, которые можно применять к данным этого типа.

В зависимости от требований задания программист выбирает тип для объектов программы. Типы Си++ можно разделить на простые и составные. К простым типам относят типы, которые характеризуются одним значением. В Си++ определено 6 простых типов данных:

int (целый)

char (символьный)

целочисленные

 

wchar_t (расширенный символьный)

bool (логический)

с плавающей точкой

(число=мантисса х 10к )

 

float(вещественный)

double (вещественный с двойной точностью)

 

Существует 4 спецификатора типа, уточняющих внутреннее представление и диапазон стандартных типов

short (короткий)

long (длинный)

signed (знаковый)

unsigned (беззнаковый)

Язык Си с помощью оператора typedef позволяет задавать новое имя уже существующим переменным. При этом не создается новый тип данных.

Каждая переменная перед её использованием в программе на языке С++ должна быть объявлена, т. к. для неё должна быть выделена память, размер которой и её содержимое зависят от типа, указанного в объявлении. Так, переменной типа char выделяется 1 байт, int – 4 байта, float – 4 байта , double – 8 байтов, bool – 1 байт. Объявление переменной состоит из названия её типа и имени:

int x; // объявление переменной x типа int

double f; // объявление переменной f типа double

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

int i, j, k; // объявление целых переменных i, j и k

Переменная (объявление, инициализация, использование). Время жизни и область видимости переменных. Виды переменных: глобальные, локальные, статические, автоматические, регистровые, внешние. Отличия в инициализации автоматических и статических переменных. Операции простого и сложного присваивания. Примеры.

 Переменная в СИ++ - именованная область памяти, в которой хранятся данные определенного типа. У переменной есть имя и значение. Имя служит для обращения к области памяти, в которой хранится значение. Перед использованием любая переменная должна быть описана. Примеры:

int a; float x;

При описании можно присвоить переменной начальное значение (инициализация).

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

Существуют два вида локальных переменных: автоматические и статические. Автоматические переменные возникают только в момент обращения к функции и исчезают при завершении ее работы.

Существуют два вида локальных переменных: автоматические и статические. Автоматические переменные возникают только в момент обращения к функции и исчезают при завершении ее работы.

Если необходимо сохранить значения локальных переменных внутри функции, их следует объявить статическими с использованием ключевого словаstatic.

Объявление register сообщает компилятору, что данная переменная будет интенсивно использоваться. Идея состоит в том, чтобы переменные, объявленные register , разместить на регистрах машины, благодаря чему программа, возможно, станет более короткой и быстрой. Однако компилятор имеет право проигнорировать это указание.

Внешняя переменная — это переменная, значение которой известно во всех функциях, объявленных после нее, в том числе и в самой функцииmain()

Выражение. Правила вычисления выражений. Операнд. Операция. Знаки операций. Постфиксный и префиксный инкремент и декремент. Унарные, бинарные и тернарная операции. Операция приведения типа. Примеры.

 Под порядком вычисления (order of evaluation) понимается порядок, в котором вычисляются значения отдельных членов выражения. В языке Си имеется небольшое количество операторов, для которых определен порядок вычисления операндов. К числу таких операторов относятся:

● логическое И (&&),

● логическое ИЛИ (||), М

● тернарный оператор (?:),

● оператор запятая (,).

х+у-10 , где х у 10 - операнды

Знаки операций обеспечивают формирование и последующее вычисление выражений. Выражение есть правило для получения значения. Один и тот же знак операции может употребляться в различных выражениях и по-разному интерпретироваться в зависимости от кон­текста. Для изображения операций в большинстве случаев используется несколько символов.

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

условие ? выражение1 : выражение2;

Если выполняется условие, то тернарная операция возвращает выражение1, в противном случае - выражение2.

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

 Для выполнения преобразования необходимо перед объектом записать в скобках нужный тип:

 

 

(имя-типа) операнд

int i=5, j=2;

float x=0;

x = (float)i + 2; // x = 7

x = i / j; // x = 2

x = (float)i / j; // x = 2.5

В этом примере целая переменная i с помощью операции приведения типов приводится к плавающему типу, а затем уже участвует в вычислении выражения.

Выражению с приведением типа не может быть присвоено другое значение.

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

Преобразование называется явным, если для его задания программист должен специально что-то написать.

18. Арифметические операции: +, -, *, /, %, ++, --. Преобразование типов при выполнении операций. Операция явного приведения типа. Примеры

+ cложение

-вычитание

% остаток от деления

/ целая часть от деления

++ инкримент

- декремент


Дата добавления: 2021-01-21; просмотров: 213; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!