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

Аргумент типа char (*)[1000] несовместим с параметром типа char** - C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 5.00
sanyo
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 6
04.10.2013, 00:59     Аргумент типа char (*)[1000] несовместим с параметром типа char** #1
Здравствуйте!
Есть вот такая структура:
C
1
2
3
4
5
6
#define max 1000
struct expr
    {
        char s[MAX][MAX];
        int index;
    };
В основной функции есть следующий фрагмент:

C
1
2
3
4
char s[]="-5+(-3.4+3*(-2))";
struct expr e;
e.index=0;
putCh(&(e.s[e.index++]),s[0]);  //(*)
А вот функция putCh, которая по идее должна заменять содержимое строки s на символ c

C
1
2
3
4
5
6
void putCh(char** s, char c)
{
    char ch[2];
    ch[0]=c; ch[1]='\0';
    strcpy(*s,ch);
}
Выдает ошибку в строке (*) "Аргумент типа char (*)[1000] несовместим с параметром типа char**".
Что не так? Вроде &(e.s[e.index++]) - адрес строки, и char** - тоже, все нормально. В чем беда?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.10.2013, 00:59     Аргумент типа char (*)[1000] несовместим с параметром типа char**
Посмотрите здесь:

Аргумент типа "char *" несовместим с параметром типа "LPCWSTR" C++
C++ Аргумент типа "HDC" несовместим с параметром типа const PAINTSTRUCT
Const char несовместим с параметром типа FILE C++
Аргумент типа WCHAR* не совместим с параметром типа const char* C++
Аргумент типа "unsigned char*" несовместим с параметром типа "const char*" C++
C++ Ошибка "аргумент типа char несовместим с параметром типа char*"
C++ Аргумент типа double несовместим с параметром типа double
Аргумент типа "LPCWSTR" несовместим с параметром типа "LPCSTR" C++
Добавление в массив типа char * одного элемента типа char C++
C++ Аргумент типа "const char*" несовместим с параметром типа "LPCWSTR"
Ошибка аргумент типа "char" несовместим с параметром типа "LPCSTR" C++
Аргумент типа double несовместим с параметром типа double* C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Aloir
 Аватар для Aloir
216 / 216 / 13
Регистрация: 17.12.2010
Сообщений: 689
04.10.2013, 01:49     Аргумент типа char (*)[1000] несовместим с параметром типа char** #2
сделайте так...
C++
1
2
3
4
5
6
7
8
void putCh(char* s, char c)
{
    char ch[2];
    ch[0]=c; ch[1]='\0';
    strcpy(s,ch);
} 
 
    putCh(e.s[e.index++],s[0]); // вызов
Добавлено через 31 минуту
и вот сюда обратите внимание
sanyo
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 6
04.10.2013, 23:11  [ТС]     Аргумент типа char (*)[1000] несовместим с параметром типа char** #3
Спасибо, я все понял. Что бы передать массив по ссылке, не нужно дополнительно брать адрес=)
Yandex
Объявления
04.10.2013, 23:11     Аргумент типа char (*)[1000] несовместим с параметром типа char**
Ответ Создать тему
Опции темы

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