Menu
CoddyTech

Приведение типов. Часть 2

Часть раздела Основы путешествия по C++ на Coddy. Урок 15 из 74.

В C++ мы можем преобразовывать числа в строки и наоборот. Чтобы преобразовать значение в строку, можно использовать функцию std::to_string():

int number = 789;
bool isValid = true;
string text1 = to_string(number);  // становится "789"
string text2 = isValid ? "true" : "false";  // становится "true"

Когда вы преобразуете число с плавающей точкой двойной точности в строку с помощью to_string(), по умолчанию будет отображаться 6 знаков после запятой, даже если в исходном числе их меньше.

Например:

double n1 = 789.0;
string text1 = to_string(n1);
// становится "789.000000"

double n2 = 789.5;
string text2 = to_string(n2);
// становится "789.500000"

double n3 = 789.123;
string text3 = to_string(n3);
// становится "789.123000"

Чтобы преобразовать строку в другой тип, у нас есть несколько вариантов:

String to Integer:

string numberText = "123";
int number = stoi(numberText);  // становится 123

Строка в число с плавающей точкой:

string decimalText = "45.67";
double decimal = stod(decimalText);  // становится 45.67

Примечание: при преобразовании строк в числа эти функции считывают максимально возможное количество допустимых символов с начала строки. Они вызывают ошибку, только если строка начинается с недопустимого символа:

string validStart = "42abc";
int number = stoi(validStart);  // становится равным 42 (буквы в конце игнорируются)

string invalidStart = "abc";
int number2 = stoi(invalidStart);  // Это вызовет ошибку

Попробуйте сами

В этом уроке нет задания по программированию.

quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор C++