Форум программистов, компьютерный форум CyberForum.ru

Не работает stoi(str1[1]) - C++

Восстановить пароль Регистрация
 
intern
 Аватар для intern
15 / 15 / 6
Регистрация: 30.03.2014
Сообщений: 67
Завершенные тесты: 1
03.06.2014, 14:28     Не работает stoi(str1[1]) #1
Почему не компилируется код:
C++
1
2
string str1 = "12345";
сout << "stoi(str1[1])\t" << stoi(str1[1])*3 << endl;
Кликните здесь для просмотра всего текста

error: call of overloaded 'stoi(char&)' is ambiguous
note: candidates are:
note: int std::stoi(const string&, std::size_t*, int) <near match>
note: no known conversion for argument 1 from 'char' to 'const string& {aka const std::basic_string<char>&}'
note: int std::stoi(const wstring&, std::size_t*, int) <near match>
note: no known conversion for argument 1 from 'char' to 'const wstring& {aka const std::basic_string<wchar_t>&}'

А этот код работает:
C++
1
2
3
4
5
string str1 = "12345";
string str2;
 
str2 = str1[1];
cout << "stoi(str2)\t" << stoi(str2)*3 << endl;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2014, 14:28     Не работает stoi(str1[1])
Посмотрите здесь:

Написать и протестировать функцию STR_CMP(str1,str2) C++
заменить в строке все вхождения подстроки str1 на подстроку str2 C++
C++ является ли строка str1 подстрокой строки str2
заменить все вхождения подстроки str1 на подстроку str2; строка str1 вводится из файла, а строка str2 с клавиатуры C++
C++ Функцию, которая получает два параметра str1 и str2 типа string и возвращает позицию начала последнего появления str2 в str1
C++ All_of и stoi не члены std?
C++ Stoi was not declared in this scope

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Кудаив
328 / 405 / 24
Регистрация: 27.05.2012
Сообщений: 1,162
Завершенные тесты: 2
03.06.2014, 14:33     Не работает stoi(str1[1]) #2
stoi принимает const string& или const wstring& а operator[] для string возвращает char& или const char&
zss
Модератор
Эксперт С++
 Аватар для zss
5942 / 5547 / 1783
Регистрация: 18.12.2011
Сообщений: 14,164
Завершенные тесты: 1
03.06.2014, 15:15     Не работает stoi(str1[1]) #3
Цитата Сообщение от intern Посмотреть сообщение
stoi(str1[1])
str1[1] - это вторая буква (т.е '2').
Yandex
Объявления
03.06.2014, 15:15     Не работает stoi(str1[1])
Ответ Создать тему
Опции темы

Текущее время: 12:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru