Ver Mensaje Individual
  #2 (permalink)  
Antiguo 14/03/2016, 15:08
dehm
 
Fecha de Ingreso: septiembre-2010
Mensajes: 494
Antigüedad: 13 años, 7 meses
Puntos: 10
Respuesta: Problemita con los struc

Da la sensación de que ya lo tenías y por algún lado te has equivocado y has empezado a liarte sólo

Es casi como lo tenías, lo que pasa es que has de declarar (o declarar e implementar) primero la función listar().

Por otro lado, en la función ha aparecido un objeto o struct del tipo "lislibro" que luego es el que pretendes retornar, pero ese struct no está definido.
En resumen, que casi lo tenías.
Te pongo el ejemplo tuyo corregido:
Código C:
Ver original
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #define MAXLIBROS 200
  5. #define MAXCAD 256
  6.  
  7. typedef char cadena[MAXCAD];
  8. typedef struct
  9. {
  10.     int codigo;
  11.     cadena nombre;
  12. } libro;
  13.  
  14. libro listar();
  15.  
  16. int main(int argc, char *argv[])
  17. {
  18.     libro lib[MAXLIBROS];
  19.     lib[0] = listar();
  20.     printf("%d", lib[0].codigo);
  21.     printf("\n");
  22.     printf("%s", lib[0].nombre);
  23.     return 0;
  24. }
  25.  
  26.  
  27. libro listar()
  28. {
  29.     libro l;
  30.     int i=100;
  31.     l.codigo = i;
  32.     strcpy(l.nombre,"nombre");
  33.     return l;
  34. }
__________________
Mi calculadora en Qt