РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
733 of 815 menu

C-приведение (T)

C-приведение (T) - это оператор явного преобразования типов, который был унаследован из языка C. В C++ его использование не рекомендуется, так как он не даёт компилятору достаточной информации о намерениях программиста и может выполнять опасные преобразования. Синтаксис <~c~>(T)value<~/c~> применяет приведение к типу <~c~>T<~/c~> к значению <~c~>value<~/c~>. C-приведение может выполнять <~c~>static_cast<~/c~>, <~c~>const_cast<~/c~> и <~c~>reinterpret_cast<~/c~> в зависимости от контекста, что делает его менее безопасным по сравнению с именованными приведениями.

Синтаксис

(T)value

Пример

Давайте приведём число с плавающей точкой к целому типу с помощью C-приведения:

#include <iostream> using namespace std; int main() { double num = 3.14; int res = (int)num; cout << res << endl; return 0; }

Результат выполнения кода:

3

Пример

Давайте приведём указатель на целое число к указателю на символ:

#include <iostream> using namespace std; int main() { int num = 65; char* res = (char*)# cout << *res << endl; return 0; }

Результат выполнения кода:

"A"

Пример

Давайте снимем константность с переменной с помощью C-приведения:

#include <iostream> using namespace std; int main() { const int num = 10; int* res = (int*)# *res = 20; cout << num << endl; return 0; }

Результат выполнения кода:

20

Смотрите также

  • оператор static_cast,
    который выполняет безопасное приведение на этапе компиляции
  • оператор dynamic_cast,
    который выполняет безопасное приведение полиморфных типов
  • оператор const_cast,
    который снимает или добавляет константность
  • оператор reinterpret_cast,
    который выполняет низкоуровневое переосмысление битов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить