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

Вниз

Как обьявить функцию?   Найти похожие ветки 

 
alles ©   (2007-04-10 12:16) [0]

Здраствуйте.
Как обьявить в длл функцию чтобы она могла возвращять array of byte?
Я делал так:
type
     TArrayOfSomeByte = array[0..32] of byte;
.....
function ReturnArrayOfByte():TArrayOfSomeByte;

из другово прожекта Delphi вызываю и все нормально, а из с++ или C# не получяется? Как обьявить функцию чтобы мог из любой среды прогр. вызывать эту ф-ию?
Спасибо


 
Сергей М. ©   (2007-04-10 12:24) [1]

function ReturnArrayOfByte():TArrayOfSomeByte; stdcall; //или cdecl - в зависимости от выбранного Сишного declspec-спецификатора

А в Сях объявляешь процедуру, передавая ей параметром указатель на структуру.


 
Правильный Вася   (2007-04-10 13:10) [2]

"из любой среды" надо использовать совместимые типы данных
например PCHAR


 
Сергей М. ©   (2007-04-10 13:18) [3]

Вася, ты гонишь)

Указатель - он и в Африке указатель.
А уж типизировать его можно как угодно и где угодно - от этого указатель не перестанет быть указателем)


 
alles ©   (2007-04-10 13:23) [4]

Сергей М. ©   (10.04.07 12:24) [1]
... передавая ей параметром указатель на структуру


пожалуста,можно пример как слелать такое?


 
Правильный Вася   (2007-04-10 13:25) [5]


> А в Сях объявляешь процедуру,

в сях нет процедур, одни лишь функции

а по поводу указателей согласен, только типизировать их смысла не вижу, только запутывает
да и пчар тоже указатель


 
Leonid Troyanovsky ©   (2007-04-10 13:26) [6]


> alles ©   (10.04.07 12:16)  

> с++ или C# не получяется? Как обьявить функцию чтобы мог
> из любой среды прогр. вызывать эту ф-ию?


Лучше передавать уже распределенный буфер вместе с его размером.
А возвращать, скажем, количество реально обработанных байтов.

--
Regards, LVT.


 
Сергей М. ©   (2007-04-10 13:27) [7]


> в сях нет процедур, одни лишь функции


да по-барабану !

Ну пусть будет void-функция - суть от этого не меняется.


> типизировать их смысла не вижу, только запутывает


Да ты шо ?! А мужики-то и не знают)


 
Alexey (AZ)   (2007-04-10 14:52) [8]

function ReturnArrayOfByte(ptr:pointer;size:integer):integer;
И минимум проблем с переносимостью. Вернет кол-во заполненых бульё... boolean"ов :)



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

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

Наверх




Память: 0.48 MB
Время: 0.053 c
15-1175435176
isasa
2007-04-01 17:46
2007.04.29
Многопоточная задача канадских лесорубов.


15-1175778266
{RASkov}
2007-04-05 17:04
2007.04.29
Окно редактора


4-1165047622
duby dub
2006-12-02 11:20
2007.04.29
Исчезает иконка в трее


2-1176009000
Roman_S
2007-04-08 09:10
2007.04.29
есть Интернет? --> какой ip?


2-1175825813
VolanD666
2007-04-06 06:16
2007.04.29
BytesPerScanLine