Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Problema al definir una funcion que devuelve un puntero

Estas en el tema de Problema al definir una funcion que devuelve un puntero en el foro de C/C++ en Foros del Web. Buenas! Tengo la siguiente funcion definida en un archivo: Código: GLMmodel* glmReadOBJ(char* filename); A partir del proyecto donde tenia esta linea, genere una libreria estatica ...
  #1 (permalink)  
Antiguo 02/09/2012, 13:04
 
Fecha de Ingreso: septiembre-2012
Mensajes: 38
Antigüedad: 12 años, 2 meses
Puntos: 0
Problema al definir una funcion que devuelve un puntero

Buenas!
Tengo la siguiente funcion definida en un archivo:

Código:
GLMmodel* glmReadOBJ(char* filename);
A partir del proyecto donde tenia esta linea, genere una libreria estatica .a y la vincule al nuevo proyecto.

Pero al definirla en el proyecto con extern me da el siguiente error:

error: expected initializer before '*' token

Así la tengo definida:

Código:
extern GLMmodel* glmReadOBJ(char* filename);
¿ Alguna idea de cual puede ser el problema?

El IDE que uso es CodeBlocks
  #2 (permalink)  
Antiguo 03/09/2012, 00:37
 
Fecha de Ingreso: junio-2010
Ubicación: Madrid
Mensajes: 620
Antigüedad: 14 años, 5 meses
Puntos: 73
Respuesta: Problema al definir una funcion que devuelve un puntero

Si no he entendido mal, tienes una librería estática llamada, por ejemplo, Mi_Libreria.a, que procede de un archivo llamado Mi_Libreria.c.

Para este archivo Mi_Libreria.c deberás tener un archivo Mi_Libreria.h, en el que deben estar declarados todos los prototipos de funciones, estructuras de datos, clases, definiciones, etc., que se van a implementar en Mi_Libreria.c y que deban ser conocidos por los programas que van a utilizar esa librería.

Tanto el archivo Mi_Libreria.a como el archivo Mi_Libreria.h deberán estar vinculados al proyecto.

En los archivos de código fuente del proyecto en los que vayas a utilizar las funciones de Mi_Libreria, simplemente bastará con #incluir el archivo de cabecera Mi_Libreria.h, y ya podrás utilizar los elementos declarados en ese archivo de cabecera normalmente, sin necesidad del atributo extern.

Doy por hecho que el tipo GLMmodel está definido en Mi_Libreria.h, o en otro archivo de cabecera (que deberá ser #incluido ANTES que Mi_Libreria.h, tanto en Mi_Libreria.c como en tu archivo de codigo fuente).
  #3 (permalink)  
Antiguo 05/09/2012, 08:10
 
Fecha de Ingreso: septiembre-2012
Mensajes: 38
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Problema al definir una funcion que devuelve un puntero

Cierto, habia olvidado añadir el .h de la libreria.
¡Muchas gracias por tu respuesta!

Etiquetas: definir, devuelve, funcion, puntero
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:26.