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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
intern
 Аватар для intern
15 / 15 / 6
Регистрация: 30.03.2014
Сообщений: 70
Завершенные тесты: 1
#1

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

03.06.2014, 14:28. Просмотров 445. Ответов 2
Метки нет (Все метки)

Почему не компилируется код:
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++
Заменить в строке все вхождения подстроки str1 на подстроку str2 C++
C++ Функция: проверить, является ли строка str1 подстрокой строки str2
Заменить все вхождения str1 на str2 (str1 вводится из файла, а str2 - с клавиатуры) C++
C++ Функцию, которая получает два параметра str1 и str2 типа string и возвращает позицию начала последнего появления str2 в str1
C++ All_of и stoi не члены std?
C++ Исправить ошибку! Ввести две строки, если str1!=str2, то объединить их
C++ Заменить в строке все вхождения подстроки str1 на подстроку str2
C++ Stoi was not declared in this scope
Функция определяющая наличие символов строки str2 в строке str1 C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,164
Завершенные тесты: 2
03.06.2014, 14:33     Не работает stoi(str1[1]) #2
stoi принимает const string& или const wstring& а operator[] для string возвращает char& или const char&
zss
Модератор
Эксперт С++
 Аватар для zss
6112 / 5715 / 1849
Регистрация: 18.12.2011
Сообщений: 14,600
Завершенные тесты: 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])
Ответ Создать тему
Опции темы

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