LINUX.ORG.RU

Глупый вопрос по C++. Строка -> число


0

0

Читал, читал в нете. Все равно ерунда какая-то.
#include "iostream.h"
#include "string.h"
main()
{
using namespace std;
string test;
cin >> test;
}
Как сделать из test int?

если
atoi(test)
то
error: cannot convert `std::string' to `const char*' for argument `1' to `int atoi(const char*)'

если int(test), то из "1" 49 получается - ну, это понятно.

Как все таки нормально переделать?

anonymous

atoi(test.c_str()) либо пиши плюсовый atoi :)

zZzZ
()

atoi(test.c_str()) 

или

int test;
cin >> test;

или 

string test;
cin >> test;
istringstream strin(test);
int num;
strin >> num;

:)

anonymous
()
Ответ на: комментарий от anonymous

Спасибо всем. Не, конца света пока еще не будет, если есть столько человечных людей.

kuz
()
Ответ на: комментарий от human0id

Еще вот хочу спросить.
Как осуществить слияние отдельных символов в строке в другу строку? Тоесть примерно:
str=test[0]+test[1];
тоесть поместить в str два первых символа строки test.
если сделать как я написал, то при test="234" str получаеться 'e'.

kuz
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.