7 / 7 / 0
Регистрация: 29.06.2013
Сообщений: 218
1

Cin.getline "error: no matching function for call to "STD::BASIC_istream<char> и.тд)

14.01.2019, 11:19. Показов 9395. Ответов 36
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
быстрый поиск в интернете дал понять, сущность проблемы, но не ее основу.
касательно работы с интами все ОК. читает и выводит. с char он пишет "ВЫПОЛНЕНИЕ FAILED)
а со string выдает эту ошибку, я только начал погружаться в основы С++ до того изучил java basic core.
я продолжу гуглить, если кто-нибудь сталкивался с подобными вещами, буду признателен за любую инфу.

возможно проблема с IDE. дома у меня стоит visual studio и с ней все работает. на работе же minGW и netBeans

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <cstdlib>
#include <iostream>
#include <string>
 
using namespace std;
 
/*
 * 
 */
int main() {
    int a =0;
    string str;
    char ar [20];
    cout << " Stroka vivoda = ";
    cin.getline(ar,21);
    cout << ar;
   
    return 0;
}
Добавлено через 1 минуту
или может быть дело в этих стандартах с++11 с++98 я еще не до конца разобрался, много информации
Миниатюры
Cin.getline "error: no matching function for call to "STD::BASIC_istream<char> и.тд)  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.01.2019, 11:19
Ответы с готовыми решениями:

[Error] no matching function for call to 'std::basic_ifstream<char>::basic_ifstream(std::string&)
Пишу на DEV-C++, есть функция, в ней не работает 4 строчка: ifstream reading(FileName); Выдает...

Ошибка: no matching function for call to 'Slovare<std::basic_string<char> >::show()'
Помогите исправить ошибку. Программа должна при нажатии 3 выводить итог, но при построении выходит...

Error: No matching function for call to
Доброго времени суток! Прошу помочь с проблемой, возникшей при компиляции данного кода, а именно:...

error: no matching function for call to `QObject::connect(QPushButton&, const char[10], QApplication*, const char[8])'
Ошибка понимаю какая, но не понимаю, почему возникла и как исправить!) #include &lt;QtGui&gt; int...

36
7 / 7 / 0
Регистрация: 29.06.2013
Сообщений: 218
14.01.2019, 13:24  [ТС] 2
ладно, думаю дело раскрыто. потому, что я знаю, что этот код рабочий 100% и в книге так же написанно. Закрыаю вопрос, фиг с ним

Добавлено через 1 час 52 минуты
я конечно продолжил рыться, и скорее всего, у меня тупо старый компилятор. Так, как класс istream был создан еще в С а в С еще тогда не было STRING то, он просто не вырубает. Думаю, проблема именно кроется здесь
0
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
14.01.2019, 13:49 3
Цитата Сообщение от Александер2000 Посмотреть сообщение
Так, как класс istream был создан еще в С
Не смущает вас тот факт, что в Си нет классов?

std::string не является встроенным типом, поэтому напрямую потоками не поддерживается. Чтобы с ним работать, необходимо подключать заголовочный файл <string>, в котором определены функции и операторы ввода/вывода.
C++
1
2
3
4
5
6
7
// Чтение строки в c-string.
char c_str[20];
cin.getline(c_str, 20);
 
// Чтение строки в std::string.
string str;
getline(cin, str);
0
7 / 7 / 0
Регистрация: 29.06.2013
Сообщений: 218
14.01.2019, 14:00  [ТС] 4
Цитата Сообщение от valen10 Посмотреть сообщение
Не смущает вас тот факт, что в Си нет классов?
я неправильно высказался, да все верно. и этот класс добавился в С++. все верно. но смысл я другой вкладывал, что компилятор не шарит.
Цитата Сообщение от valen10 Посмотреть сообщение
std::string не является встроенным типом, поэтому напрямую потоками не поддерживается. Чтобы с ним работать, необходимо подключать заголовочный файл <string>, в котором и определены функции и операторы.
C++Выделить код
1
2
3
4
5
6
7
// Чтение строки в c-string.
char c_str[20];
cin.getline(c_str, 20);
// Чтение строки в std::string.
string str;
getline(cin, str);
не работает! Спасибо, конечно за вашу помощь, я с книжкой работаю, и все перепробывал и так и сяк. НЕТ, ошибку я написал.
и не хавает ее в разных варияциях, и при передачи син, чтобы он знал где ее искать, и даже пробывал в разных стандартах.

Добавлено через 3 минуты
Цитата Сообщение от Александер2000 Посмотреть сообщение
он пишет "ВЫПОЛНЕНИЕ FAILED)
компилятор собирает. "а как его по умному" выполнятор, фейлит. это с чарами. или если передавать сины. а все остальное ошибка, что в заголовке
0
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
14.01.2019, 14:02 5
Цитата Сообщение от Александер2000 Посмотреть сообщение
не работает!
Цитата Сообщение от Александер2000 Посмотреть сообщение
и даже пробывал в разных стандартах.
А что тут стандарты перебирать? Это даже в C++98 работает, не говоря о более новых версиях.

Какой именно код у вас не работает? Вы показали один код, на скрине совсем другой. Если проблема с тем, что на скрине, обратите внимание, что для чтения строки в std::string функция getline() указана без cin., т.е. это не метод класса.
0
7 / 7 / 0
Регистрация: 29.06.2013
Сообщений: 218
14.01.2019, 14:09  [ТС] 6
Цитата Сообщение от valen10 Посмотреть сообщение
Какой именно код у вас не работает?
Цитата Сообщение от valen10 Посмотреть сообщение
не работает!
ваш тоже.

поправьте меня если я не прав. функция принимает 3 аргумента. 2 из них нам нужны. это куда записывать, и кол-во элементов.
ну или как вы написали, cin.getline(cin,str) так как функция не является обьектом класса передаем место откуда ищет ввод
а сама стринга автоматически растягивается сколько надо.. (какпрямнувыпоняли) и не работать!
пишет, что сборка удалась, а выполнение не удалось

Добавлено через 59 секунд
следовательно, код, который работает у меня дома в визуал студио. и код который не работает в minGW netbeans говорит мне о том, что проблема глубже. скорее всего где-то где мне не хватает знаний
0
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
14.01.2019, 14:13 7
Цитата Сообщение от Александер2000 Посмотреть сообщение
cin.getline(cin,str)
Только без cin., т.е. так getline(cin,str).

По вашему описанию трудно понять, что происходит. Покажите пожалуйста код, который компилируется, но не выполняется. И текст ошибки.
0
7 / 7 / 0
Регистрация: 29.06.2013
Сообщений: 218
14.01.2019, 14:31  [ТС] 8
Цитата Сообщение от valen10 Посмотреть сообщение
По вашему описанию трудно понять, что происходит. Покажите пожалуйста код, который компилируется, но не выполняется. И текст ошибки.
конечно
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <cstdlib>
#include <iostream>
#include <string>
 
using namespace std;
 
/*
 * 
 */
int main() {
    int a =0;
    //string str;
    char ar [20];
    cout << " Stroka vivoda = ";
    string str;
    getline(cin, str);
    cout << str;
   
    return 0;
}
я просто только,только начинающий, и могу обманываться сам с собой, что я что-то понимаю. вполне вероятно.
Миниатюры
Cin.getline "error: no matching function for call to "STD::BASIC_istream<char> и.тд)  
0
7 / 7 / 0
Регистрация: 29.06.2013
Сообщений: 218
14.01.2019, 14:31  [ТС] 9
это собирается, но не выполняется
0
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
14.01.2019, 14:53 10
Александер2000, полагаю, что не настроена IDE и/или библиотеки. Чтобы это выяснить, найдите файл exe, который был создан после компиляции, откройте командную строку и запустите его. О результатах расскажите.
0
7 / 7 / 0
Регистрация: 29.06.2013
Сообщений: 218
14.01.2019, 15:02  [ТС] 11
Цитата Сообщение от valen10 Посмотреть сообщение
полагаю, что не настроена IDE и/или библиотеки. Чтобы это выяснить, найдите файл exe, который был создан после компиляции, откройте командную строку и запустите его. О результатах расскажите.
не уверен, оно? раньше просто не читал, про то как это устроенно на техническом уровне. только в debuge есть, остальных releas или подобных нет.
Миниатюры
Cin.getline "error: no matching function for call to "STD::BASIC_istream<char> и.тд)  
0
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
14.01.2019, 15:15 12
Александер2000, это похоже и есть причина. Не установлено ли у вас несколько разных версий mingw? Если так, то желательно их удалить, установить одну последнюю версию, прописать ее в настройках IDE и в переменную окружения PATH.
0
7 / 7 / 0
Регистрация: 29.06.2013
Сообщений: 218
14.01.2019, 15:21  [ТС] 13
Цитата Сообщение от valen10 Посмотреть сообщение
это похоже и есть причина. Не установлено ли у вас несколько разных версий mingw? Если так, то желательно их удалить, установить одну последнюю версию, прописать ее в настройках IDE и в переменную окружения PATH.
C:\ProgramData\Oracle\Java\javapath;F:\Новая папка\Embarcadero\Studio\19.0\bin;C:\Users\Public\Documents\Embarcadero\Studio\1 9.0\Bpl;F:\Новая папка\Embarcadero\Studio\19.0\bin64;C:\Users\Public\Documents\Embarcadero\Studio \19.0\Bpl\Win64;C:\cygwin64\bin;C:\TDM-GCC-64\bin;C:\MinGW\bin
это мой системный PATH
но есть еще локальный, в локальном PYTHON
есть ли вероятность, что с++ нужен локальный? не сильно понимаю разницу в этом всем. С++ говорили что будет не прост, но не думал, что в самом анчале на анстройке инструментария)))
Миниатюры
Cin.getline "error: no matching function for call to "STD::BASIC_istream<char> и.тд)  
0
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
14.01.2019, 15:23 14
Лучший ответ Сообщение было отмечено valen10 как решение

Решение

Александер2000, почему нельзя скачать Visual Studio? Зачем эти танцы с бубном?
0
7 / 7 / 0
Регистрация: 29.06.2013
Сообщений: 218
14.01.2019, 15:32  [ТС] 15
Цитата Сообщение от Azazel-San Посмотреть сообщение
Александер2000, почему нельзя скачать Visual Studio? Зачем эти танцы с бубном?
ХА! вы правда считаете, что дома я поставил висуал студию, а на работе решил удариться в шаманизм?))
Просто, переустанавливать винду это ОООЧЕНЬ неудобно для рабочей станции, ставить виртуалку(мало оперативки) а обновления он не тянет, то ли винда здесь раскуроченая, то ли чот. впринципе можно попробывать вручную поставить все необходимые части для студии, но я думал этот процесс примерно такой же, как воскрешение какого-нибудь компилятора.

п.с разумеется установка визуалстудии тут крашиться в салатик
0
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
14.01.2019, 15:35 16
Цитата Сообщение от Александер2000 Посмотреть сообщение
о я думал этот процесс примерно такой же, как воскрешение какого-нибудь компилятора
даже в таком случае, вы выбрали не лучший вариант, с чего вдруг именно NetBeans? Есть же и другие бесплатные IDE для С++
Бесплатные среды (IDE) для программирования на С/С++
0
7 / 7 / 0
Регистрация: 29.06.2013
Сообщений: 218
14.01.2019, 15:38  [ТС] 17
Цитата Сообщение от Azazel-San Посмотреть сообщение
даже в таком случае, вы выбрали не лучший вариант, с чего вдруг именно NetBeans? Есть же и другие бесплатные IDE для С++
т.е там танца с бубном не предвидеться? а то простите, дракгоценное время на обучения я трачу на решение сомнительных трабл, и людей умных напрягаю на форумах за зря
0
Параллельный Кот
1905 / 827 / 350
Регистрация: 25.03.2016
Сообщений: 2,045
14.01.2019, 15:39 18
Александер2000, хорошо, можно так оставить. Зайдите в настройки NetBeans, посмотрите, какой там компилятор прописан. И еще немного смущает C:\cygwin64\bin;C:\TDM-GCC-64\bin;C:\MinGW\bin. Не могут ли cygwin, gcc и mingw конфликтовать на уровне библиотек? База то у них одна - gcc. Скорее всего в PATH надо оставить что-то одно, а именно используемый компилятор.
0
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
14.01.2019, 15:40 19
Александер2000, Бесплатные среды (IDE) для программирования на С/С++ (смотрите полседнюю страницу)
обычно нет, попробуйте поставить студию подревнее, если вам в образовательных целях, еще могу посоветовать cmake + какой-то текстовый редактор, если вам сама студия как IDE грузится вечность.
0
7 / 7 / 0
Регистрация: 29.06.2013
Сообщений: 218
14.01.2019, 15:49  [ТС] 20
Цитата Сообщение от valen10 Посмотреть сообщение
Александер2000, хорошо, можно так оставить. Зайдите в настройки NetBeans, посмотрите, какой там компилятор прописан. И еще немного смущает C:\cygwin64\bin;C:\TDM-GCC-64\bin;C:\MinGW\bin. Не могут ли cygwin, gcc и mingw конфликтовать на уровне библиотек? База то у них одна - gcc. Скорее всего в PATH надо оставить что-то одно, а именно используемый компилятор.
убрал из PATH все кроме минГВ, тоже самое ничего не поменялось. скрин, что в настройках все как положено.

Цитата Сообщение от Azazel-San Посмотреть сообщение
обычно нет, попробуйте поставить студию подревнее, если вам в образовательных целях, еще могу посоветовать cmake + какой-то текстовый редактор, если вам сама студия как IDE грузится вечность.
качаю Экспресс-версия Microsoft Visual C++. Эта среда позволяет писать только на С/С++ 2008 года. она вродебы ставится без проблем


ща докачаю, отпишусь. если все заработает, поблагодарю всех за участие. главное, чтобы я мог учиться. неажно как. минут через 15 отпишусь
0
14.01.2019, 15:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.01.2019, 15:49
Помогаю со студенческими работами здесь

ОШИБКА no matching function for call to 'std::basic_ostream<char>::getline(std::string&, int)'
#include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;string.h&gt; #include...

Error: no matching function for call to 'std::basic_string<char>::find
if (find(Op.begin(), Op.end(), 'V') != Op.end() &amp;&amp; expression!=&quot;exp&quot;) { ...

Ошибка error: no matching function for call to '.'
Всем привет. Так как моё изучение языка с++ началось недавно, пока не со всеми проблемами могу...

[bcc32c Error]: no matching function for call to 'strcpy'
#ifdef _WIN32 #include &lt;tchar.h&gt; #include &lt;vcl.h&gt; #include &lt;math.h&gt; #include &lt;stdio.h&gt;...

no matching function for call to 'QObject::connect(QCommandLinkButton*, const char*, cNetwork*, const char*)
компилятор ругается ошибка: no matching function for call to...

Error: no matching function for call to 'tan(float&, int)'
#include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; int main() { float...

Поиск палиндрома. Итераторы. [ error: no matching function for call to ‘copy_if . ' ]
Здравствуйте. Задача поиска палиндрома (выражения, в котором не имеет значение направление...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru