Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > не компилится код


Автор: fatalfog 5.3.2006, 09:12
слил сорцы из инета, исправил ошибки все кроме одной:
strncat(button,argv[1],6);
че-то ругается на:
button.cpp cannot convert `char**' to `const char*' for argument `2' to `char* strncat(char*, const char*, size_t)'
а вроде правильно smile

Автор: MAKCim 5.3.2006, 10:10
кода побольше приведи, хотя компилятор тебе ясно говорит, что не так
может argv[1] у тебя это char**? (хотя вроде как не должно)

Автор: BreakPointMAN 5.3.2006, 10:26
А, может быть, ты не дописал "[1]" в строке "strncat(button,argv[1],6);", и у тебя получилось что-то вроде:
Код

strncat(button,argv,6);

smile

Тогда компилятор правильно ругается, ибо argv в данном случае типа char**, а функция strncat на месте второго параметра ожидает аргумент типа const char*.


Или, возможно, argv это вообще совсем не то, что мы думаем? Может быть, у тебя в теле программы определена такая переменная типа "указатель на указатель на указатель на char"? Но это был бы полный изврат...

Покажи целиком код.

Автор: Гоганчик 5.3.2006, 14:03
Правильно, без исходников и думать нечего, т.к. мы придем к одному, а окажется совершенно другое...

Автор: fatalfog 5.3.2006, 16:31
int main(int argc, char** argv[]) - начало smile
тут argv как char обьявляется smile
а код состоит из нескольких сорцов smile

Автор: BreakPointMAN 5.3.2006, 17:31
Цитата(fatalfog @ 5.3.2006, 16:31 Найти цитируемый пост)
int main(int argc, char** argv[]) - начало

а должно быть:
Код

int main(int argc, char* argv[])

а у тебя получается то, как я и говорил: argv это
Цитата(BreakPointMAN @ 5.3.2006, 10:26 Найти цитируемый пост)
переменная типа "указатель на указатель на указатель на char"

Добавлено @ 17:32
PS: исходники нужно набирать внимательно, а еще хорошо бы почитать книгу по C++... smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)