Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.06.22;
Скачать: CL | DM;

Вниз

Как вернуть массив строк из dll   Найти похожие ветки 

 
Галинка   (2008-05-07 11:27) [0]

не кидайте камнями только. Код на С:
int getStringArray(char *status){

char text[5][6] = {"text0\0",
       "text1\0",
       "text2\0",
       "text3\0",
       "text4\0"};

memset((void *)status, "0", 30);

memcpy((void *)status, (void *)text, 30);
 
return 0;
}


Вызов из программы:
char str_arr[5][6] = {{"0"}, {"0"}, {"0"}, {"0"}, {"0"}};

getStringArray(&(str_arr[0][0]));


но не работает... Точнее массив не заполняет. Подозреваю, что в длл все криво. Но не знаю, как равнее сделать (((


 
Игорь Шевченко ©   (2008-05-07 11:29) [1]

решение на С нужно ?


 
Галинка   (2008-05-07 11:44) [2]

не обязательно. Если сможите доходчиво идею объяснить ((


 
Reindeer Moss Eater ©   (2008-05-07 12:07) [3]

первый_элемент_строки#0второй_элемент_строки#0последний_элемент#0#0


 
Галинка   (2008-05-07 12:38) [4]

попробовала дебаггером. Получается, что он не верное передает адрес. В вызывающей программе адрес 0x0022fee8, в длл-ку передается 0х00000001. Почему?


 
Игорь Шевченко ©   (2008-05-07 12:40) [5]


> В вызывающей программе адрес 0x0022fee8, в длл-ку передается
> 0х00000001


Больно слышать


 
Галинка   (2008-05-07 13:00) [6]

скажите, как правильно это говорить.

Передаю в длл указатель, т.е. адрес. Вне функции он имеет значение, внутри функции почему-то 0х00000001? С другими функциями такое не происходит. Почему?


 
Галинка   (2008-05-07 13:04) [7]

есть другие фйнкции в жтой длл, которые так же работают с указателями из внешней программы. Так вот, во время трассировки адреса остаются нормальными. А в этой функции адрес меняется (( Почему?


 
Kolan ©   (2008-05-07 13:06) [8]

> Почему?

Соглашения правильные?


 
Галинка   (2008-05-07 13:08) [9]

Kolan ©   (07.05.08 13:06) [8]

что значит правильные?

Но они одинаковы для обеих функций.

Компилятор min_gw.


 
Игорь Шевченко ©   (2008-05-07 14:03) [10]


> Так вот, во время трассировки адреса остаются нормальными.
>  А в этой функции адрес меняется (( Почему?


Откуда же я знаю ?


 
Павел Калугин ©   (2008-05-07 15:40) [11]

а может надо не массив а указатель на массив возвращать?



Страницы: 1 вся ветка

Текущий архив: 2008.06.22;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.023 c
2-1212024373
AlexAA
2008-05-29 05:26
2008.06.22
Работа с камерой


2-1212039243
brother
2008-05-29 09:34
2008.06.22
имеет ли смысл задержка?


15-1210502032
просто так
2008-05-11 14:33
2008.06.22
сроки выхода D2008


1-1195055685
NX
2007-11-14 18:54
2008.06.22
Обработка сообщений в сервисе


2-1211621163
Димон
2008-05-24 13:26
2008.06.22
TXMLDocument в RUNTIME