Comunidad Gambas-es

Versión completa: Usando Extern entendiendo C
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Hola a todos.

Si se tiene una función en un archivo.h de este tipo:
C
  1. EXPORT int dwg_read_file (const char *restrict filename, Dwg_Data *restrict dwg);


Es correcto hacer esto en gambas?
GAMBAS
  1. Private Extern dwg_read_file(filename As String, Dwg_Data As Pointer) As Integer



Seria esto?
nombre_de_la_funcion(nombre_del_archivo As String, salida_de_los_datos As Pointer) As Integer

Saludos.
Sì, pero, siendo el parametro "Dwg_Data" una Estructura, tienes que pasar a la función externa una variable de una Estructura, escrita en Gambas, con los miembros que ocupan cada uno la misma cantidad de memoria que los miembros respectivos de la Estructura "Dwg_Data",  o pasar una variable de tipo Puntero que apunta a un área de memoria "reservada" (usando la función "Alloc()" de Gambas) con un tamaño de byte igual al de la Estructura "Dwg_Data".
De todas formas en cuanto al uso de EXTERN, me remito a la página que yo escribí en el foro precedente:

   https://foro.gambas-es.org/viewtopic.php?f=1&t=4501
(04-11-2020, 21:14)vuott escribió: [ -> ]De todas formas en cuanto al uso de EXTERN, me remito a la página que yo escribí en el foro precedente:

Si, lo he visto, gracias Vuott.
Saludos.