Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
mazahaler
5 / 5 / 3
Регистрация: 01.10.2015
Сообщений: 304
#1

Ошибка: call of overloaded 'strchr(char&, char)' is ambiguous

06.10.2016, 17:06. Просмотров 895. Ответов 4
Метки нет (Все метки)

Здравствуйте, прога почему-то ругается на функцию strchr, вот кусок кода:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
    #include <stdio.h>
#include <iostream>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#include <cstring>
 
 
 
 using namespace std;
 
int main()
{
    setlocale(LC_ALL,"RUSSIAN");
   char s,s1;
   int k,l,j; 
    cout << "Введите строку" << endl;
    cin >> s;
    cout << "Введите число k" << endl;
    cin >> k;
    j=strchr(s,' '); // вот на эту строку ругается
Я пытаюсь в переменную j запихнуть позицию пробела в строке.
Ошибка следующая:[Error] call of overloaded 'strchr(char&, char)' is ambiguous.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.10.2016, 17:06
Ответы с готовыми решениями:

Ошибка: ('sqrt' : ambiguous call to overloaded function)
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace...

Исправить ошибку "call of overloaded 'abs(double&)' is ambiguous"
помогите пожалуйста, выдает ошибку. не знаю где #include &lt;iostream&gt;...

Ambiguous call to overloaded function
При использовании sqrt (да и других мат. функций(sin, cos, pow...) ) выдает...

'sqrt' : ambiguous call to overloaded function
здраствуйте! ошибка в заголовке. Чё то я запамятовал как указать компилятору...

Error: call of overloaded ‘Function’ is ambiguous
log.cpp:166:25: error: call of overloaded ‘localtime_r(time_t*, tm*)’ is...

4
Croessmah
++Ͻ
14489 / 8270 / 1553
Регистрация: 27.09.2012
Сообщений: 20,312
Записей в блоге: 3
Завершенные тесты: 1
06.10.2016, 17:12 #2
C++
1
char s, // - Это один символ.
0
mazahaler
5 / 5 / 3
Регистрация: 01.10.2015
Сообщений: 304
06.10.2016, 17:17  [ТС] #3
Цитата Сообщение от Croessmah Посмотреть сообщение
char s, // - Это один символ.
т.е. нужно так? char s[40]
Но это не решило проблему(
0
Croessmah
++Ͻ
14489 / 8270 / 1553
Регистрация: 27.09.2012
Сообщений: 20,312
Записей в блоге: 3
Завершенные тесты: 1
06.10.2016, 17:19 #4
Лучший ответ Сообщение было отмечено mazahaler как решение

Решение

Цитата Сообщение от mazahaler Посмотреть сообщение
Но это не решило проблему
Теперь у Вас будет другая проблема - strchr возвращает указатель,
коим не является переменная j.
http://www.cplusplus.com/reference/cstring/strchr/
1
mazahaler
5 / 5 / 3
Регистрация: 01.10.2015
Сообщений: 304
06.10.2016, 17:23  [ТС] #5
C++
1
2
3
4
5
6
7
8
char s[40],s1;
   int k,l; 
   char * j;
    cout << "Введите строку" << endl;
    cin >> s;
    cout << "Введите число k" << endl;
    cin >> k;
    j=strchr(s[40],' ');
Та же ошибка
Исправил, работает, спасибо)
0
06.10.2016, 17:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.10.2016, 17:23

Call of overloaded template function is ambiguous
Добрый вечер. Есть два метода: template&lt;typename T, uint8_t count, bool msb =...

Ambiguous call to overloaded function / рекурсивная функция
Функция должна вызываться из движка на удаление связных списков....

Error C2668: 'sqrt' : ambiguous call to overloaded function
Собственно задание: треугольник задан координатами своих вершин. Найти его...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru