Поиск:

Ответ в темуСоздание новой темы Создание опроса
> проблема с передачей строки функцие 
:(
    Опции темы
_par
Дата 30.4.2007, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 49
Регистрация: 25.1.2007

Репутация: нет
Всего: нет



Есть функция :
Код

int explode( char *str, char sym,char *s1, char *s2 )
{
    
    
    s1 = strtok (str,sym);
    s2 = strtok (NULL,sym);
    return 0;
}


Нужно чтобы менялось значение фактического аргумента.
Когда пытаюсь передать по ссылке компилятор ругается
Код


explode(str, &arg1, &arg2);
139 C:\Documents and Settings\1337\Desktop\main.cpp cannot convert `char**' to `char*' for argument `2' to `int explode(char*, char*, char*)' 

Подскажите что нетак, и как лучше реализовать разбивку строки по символу.  smile 
PM MAIL   Вверх
Greeen
Дата 30.4.2007, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 710
Регистрация: 13.8.2006
Где: Петербург

Репутация: 10
Всего: 18



Что такое фактический аргумент? smile Покажи вызов функции.


--------------------
Подпись больше не нужна
PM MAIL ICQ Skype   Вверх
Romikgy
Дата 30.4.2007, 22:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 2
Всего: 146



Цитата(_par @  30.4.2007,  21:14 Найти цитируемый пост)
str, &arg1, &arg2

как это описано?


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
zkv
Дата 30.4.2007, 22:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 16
Всего: 92



Код

Func( char *&pcArg );//передача char * по ссылке.
//...
char *pcStr;
Func( pcStr );

это имелось ввиду?
Цитата(_par @  30.4.2007,  22:14 Найти цитируемый пост)
explode(str, &arg1, &arg2);

так понимаю переменные объявлены так:
Код

char *arg1;
char *arg2;

здесь вы передаете адреса указателей, те получается char **

Это сообщение отредактировал(а) zkv - 30.4.2007, 22:56
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0722 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.