C/C++

Задание на c++ ответить на вопросы и написать код

С++ является строго типизированным языком программированием в отличии от python, golang и др.
При создании переменной указывается тип данных.
Перечислите случаи, когда происходит неявное преобразование типа данных.

Какие способы явного преобразования вы знаете ?

Int a = (int)4.6f ;
В чем опасность такого вида преобразования?

Напишите программу, которая переводит int в unsigned char и выводит символ и код этого символа в консоль .
ББ
Билли Бонс
1 947
Из списка C++, Python, Golang единственным действительно строго типизированным языком является только Golang.
Если в языке существуют случаи неявного преобразования типов, он НЕ является строго типизированным.

В C++ происходит неявное преобразование между целыми значениями разных типов (от char до unsigned long long), между вещественными значениями разных типов (от float до long double), между целыми и вещественными значениями. Кроме того, булевы значения преобразуются в целые, а целые в булевы.

Задание имени типа в круглых скобках, разнообразные cast.

Именно в int a = (int)4.6f никакой опасности нет. Такое преобразование вещественного к целому - вполне безопасная операция. Опасность начинается, когда таким образом начинают менять типы указателей.
NA
Nursultan Akmatov
91 699
Лучший ответ
Билли Бонс благодарю.
Если не составит труда, прошу, напишите программу
Выражение в кавычках с помощью управляющих символов превращается в другие символы. См. таблицу управляющих символов.
"6F in hex is char \'\x6F\'" :
6F in hex is char — просто текст;
\' — одинарная кавычка;
\x6F — перевод числа из 16-ной системы в тип char.
Число 6F(шестнадцатеричное) = 111(десятеричное).
Код 111 = символ "o" в кодировке ASCII;
\' — еще одна одинарная кавычка;
Получается:
\'\x6F\' => 'o'
Итого:
6F in hex is char \'\x6F\' => 6F in hex is char 'o'

#include
#include

int main()
{
std::cout << "Enter your full name: ";
std::string myName;
std::cin >> myName; // это будет работать не так, как ожидается, поскольку извлечение данных из потока std::cin останавливается на первом пробеле

std::cout << "Enter your age: ";
std::string myAge;
std::cin >> myAge;

std::cout << "Your name is " << myName << " and your age is " << myAge;
}

std::cout << "Pick 1 or 2: ";
int choice;
std::cin >> choice;

std::cout << "Now enter your name: ";
std::string myName;
std::getline(std::cin, myName);

std::cout << "Hello, " << myName << ", you picked " << choice << '\n';

return 0;

std::cout << "Pick 1 or 2: ";
int choice;
std::cin >> choice;

std::cin.ignore(32767, '\n'); // удаляем символ новой строки из входного потока данных

std::cout << "Now enter your name: ";
std::string myName;
std::getline(std::cin, myName);

std::cout << "Hello, " << myName << ", you picked " << choice << '\n';

return 0;
Билли Бонс у вас инклюд пустой. из за чего ошибки везде выписывает