powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / что передать в аргумент char *&
5 сообщений из 5, страница 1 из 1
что передать в аргумент char *&
    #38908050
Фотография Картежник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть функция
Код: plaintext
1.
bool __fastcall BrowseFolder(const char *label, char *&file_name, char *prevpath = 0);


что передать во второй параметр чтобы не выходило ошибки?
во втором параметре я должен буду получить путь к файлу.
например
Код: plaintext
1.
char fname[260];


как мне во второй аргумент функции передать fname?
...
Рейтинг: 0 / 0
что передать в аргумент char *&
    #38908124
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
char fname[260];
char* p = fname;
BrowseFolder(..., p, ...);


fname туда нельзя передать, т.к. там ожидается указатель, а fname у тебя массив.
...
Рейтинг: 0 / 0
что передать в аргумент char *&
    #38908136
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если там внутри память выделяется (скорее всего так, читай описаловку), то
Код: plaintext
1.
2.
3.
4.
5.
6.
char* p = NULL;
BrowseFolder(..., p, ...);
if(p) {
  puts(p); // работаем с p
  free(p); // освобождаем память
}
...
Рейтинг: 0 / 0
что передать в аргумент char *&
    #38908201
Фотография Картежник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TЕсли там внутри память выделяется (скорее всего так, читай описаловку), то

внутри вот что делается
Код: plaintext
1.
2.
3.
4.
 char f_name[MAX_PATH];
   SHGetPathFromIDList(iidl, f_name);
   file_name = new char[strlen(f_name) + 1];
   strcpy(file_name, f_name);
...
Рейтинг: 0 / 0
что передать в аргумент char *&
    #38908248
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда так
Код: plaintext
1.
2.
3.
4.
5.
6.
char* p = NULL;
BrowseFolder(..., p, ...);
if(p) {
  puts(p); // работаем с p
  delete[] p; // освобождаем память
}
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / что передать в аргумент char *&
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]