Array
(
)

Array por referência no parâmetro da função

Rodcesar
   - 29 set 2005

Olá amigos,

Estou fazendo uma DLL e uma das funções precisar receber um array de caracteres (unsigned char) e um valor inteiro. Os dois valores devem vir por referência (ou seria ponteiro?) pois preciso retornar à quem chamou a função o array preenchido e um valor no inteiro.
A questão é como declaro um array no parâmetro para que outros compiladores (Delphi, C, VB, Java....) consigam passar o array e recebê-lo de volta?
Já tentei por um tempo e não consegui encontrar a solução, sempre dá erro na DLL ou no programa que chama a função.
Alguém poderia me mandar um exemplo de uma função em DLL que tivesse estes dois parâmetros e um exemplo da função sendo chamada e passando os parâmetros?
Grato pela ajuda de todos,

Rodrigo Cesar


Beppe
   - 01 out 2005

Em C só há passagem por valor, mas dá pra simular referência tomando ponteiros. Tome muito cuidado com passar ponteiros para memória alocada dinâmicamente. Se a dll alocar, ela destrói. Ou use buffers pré-alocados, a là Win32 API.