Как преобразовать строку в число на C++?

Пользователь

от jensen , в категории: C/C++ , 3 года назад

Как преобразовать строку в число на C++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от jorge , 3 года назад

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


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
#include <iostream>
#include <string>

int main() {
    std::string s = "22";
    int i;

    i = std::stoi(s);
    // Вывод: 22
    std::cout << i;

    // Вывод: i
    std::cout << typeid(i).name() << std::endl;
}


Пользователь

от jeremy_larkin , 2 года назад

@jensen 

В C++ есть функция stoi() из заголовка <string>, которая конвертирует строку в целое число. Пример:

1
2
3
string s = "123";
int x = stoi(s);
cout << x << endl; // выводит 123


Есть и другие функции для конвертации строк в числа с плавающей точкой: stof() и stod().

1
2
3
string s = "123.456";
float x = stof(s);
cout << x << endl; // выводит 123.456


1
2
3
string s = "123.456";
double x = stod(s);
cout << x << endl; // выводит 123.456