Ver Mensaje Individual
  #6 (permalink)  
Antiguo 04/09/2011, 06:10
ivanfr90
 
Fecha de Ingreso: septiembre-2011
Mensajes: 3
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: pasage de arreglos de estructuras a funcion

Código C:
Ver original
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. struct jugadores
  5. {
  6.     char nombre[200];
  7.     int fichas;
  8.     char posicion[1];
  9.     char estado[20];
  10.     char m;
  11.     char accion [20];
  12.     int apuesta;
  13.     int cantapuesta;
  14.     int cantsube;
  15.     int cantigualada;
  16.     int manosganadas;
  17.     int Cchica;
  18.     int Cgrande;
  19.     char cartasmias[10];
  20. };
  21.  
  22. void lineas (FILE *a, struct jugadores asiento[10]);
  23.  
  24. int main(void)
  25. {
  26.  
  27.     struct jugadores asiento[10];
  28.  
  29.     FILE *archivo;
  30.     int a;
  31.     int b;
  32.     int c;
  33.  
  34.     archivo = fopen("C:\\archivo1.txt", "r");
  35.  
  36.     lineas(archivo, asiento);
  37.    
  38.     return 0;
  39.  
  40. }
  41.  
  42. void lineas (FILE *a, struct jugadores asiento[10])
  43. {
  44.     char n;
  45.     char b[200];
  46.  
  47.     for (n=0;n<10;n++)
  48.     {  
  49.         fgets(b,200,a);
  50.  
  51.         strcpy(asiento[n].nombre, b);
  52.         printf("%s\n", asiento[n].nombre);
  53.     }
  54.  
  55. }

El código un poco arreglado quedaría así. Ten en cuenta lo que te dijo el compañero en el mensaje anterior y es que no habías declarado un vector de estructuras de 10 elementos, luego el for que utilizabas en la función "lineas" no servía para nada.

Otro punto a destacar es que si declaras una variable como global, como es en este caso la estructura jugadores, declarala antes de cualquier encabezado de una función. Al compilar me daba error por eso mismo...