Similar presentations:
Преобразование типов данных на С++
1.
АВТОНОМНАЯ НЕКОММЕРЧЕСКАЯ ОБРАЗОВАТЕЛЬНАЯ ОРГАНИЗАЦИЯ«АКАДЕМИЧЕСКИЙ КОЛЛЕДЖ»
ДИСЦИПЛИНА: Основы
алгоритмизации и
программирования
ЛЕКТОР: ВОЛЧЕНКО СВЕТЛАНА ВИКТОРОВНА , РЕГАЛИИ К.Т.Н
ПОЧТА: [email protected]
2.
ТЕМА ЛЕКЦИИ: ПРЕОБРАЗОВАНИЕ ТИПОВДАННЫХ НА С++
Преобразование (изменение) типов данных на с++
Неявное преобразование типов данных на с++
Явное преобразование с помощью встроенных
операторов
Явное преобразование с помощью указания
целевого типа данных
3.
ПРЕОБРАЗОВАНИЕ (ИЗМЕНЕНИЕ)ТИПОВ ДАННЫХ НА С++
Приведение типов в стиле языка C++ может привести выражение любого
типа к любому другому типу данных (исключение это приведение
пользовательских типов по значению). К примеру, int может быть
преобразован к указателю на double
ЯВНОЕ
(пользователем)
НЕЯВНОЕ
(компилятором)
4.
НЕЯВНОЕ ПРЕОБРАЗОВАНИЕ ТИПОВДАННЫХ на С++
Это называется автоматическим преобразованием, потому что оно выполняется
компилятором автоматически без какой-либо внешней силы со стороны пользователя.
Этот тип приведения типов используется в основном в программе, в которой в
выражении присутствуют два или более типов данных.
5.
НЕЯВНОЕ ПРЕОБРАЗОВАНИЕ ТИПОВДАННЫХ на С++
6.
ЯВНОЕ ПРЕОБРАЗОВАНИЕ С ПОМОЩЬЮУКАЗАНИЯ ЦЕЛЕВОГО ТИПА ДАННЫХ
(type) expression или type (expression)
1. Преобразование в int
//переменных
//чисел
float a = 5;
int ival = (int) 3.14159;
double aa = 5.0;
long aaa = 5;
char aaaa{ 'a' };
int b = int(a); // можно int b = (int)a, программа будет работать также ;
int bb = int(aa);
int bbb = int(aaa);
int bbbb = int(aaaa);
2. Преобразование в double, float, long, char
- Анологично п.1
7.
ЯВНОЕ ПРЕОБРАЗОВАНИЕ ТИПОВ СПОМОЩЬЮ ВСТРОЕННЫХ ОПЕРАТОРОВ
Явное преобразование типов: этот процесс также называется приведением типов
и определяется пользователем. Здесь пользователь может ввести результат, чтобы
придать ему определенный тип данных.
Явное преобразование типов производится при помощи следующих операторов:
static_cast, dynamic_cast, const_cast и reinterpret_cast
ПРЕОБРАЗОВАНИЕ static_cast
Операция static_cast в языке C++ осуществляет явное и допустимое
приведение заданного выражения в указанный тип данных.
Операция static_cast аналогична операции «круглые скобки» с одним
исключением: она не выполняет приведение указателей на неродственные
типы (для этого применяется операция reinterpret_cast).
8.
1.static_cast (ПРИМЕРЫ)
int i1 = 11;
int i2 = 3;
float x = static_cast<float>(i1) / i2;
float f=3.1234;
int b = static_cast<int>(f);
cout<<b;
int x { 10 };
int y { 4 };
// преобразовываем x в double, и поэтому
// получаем деление с плавающей запятой
double d { static_cast<double>(x) / y };
cout << d; // prints 2.5
9.
Наши контакты:ЗАВЕДУЮЩИЙ ОТДЕЛЕНИЕМ:
8 (8442) 52-78-79, 59-71-49
ПРИЕМНАЯ КОМИССИЯ:
8 (8442) 599-800, [email protected]
ПРИЕМНАЯ ДИРЕКТОРА:
8 (8442) 52-73-53,
[email protected]