Ayuda con estructuras de C

Iniciado por yonkikong, 21 Mayo 2015, 11:57 AM

0 Miembros y 1 Visitante están viendo este tema.

yonkikong

Hola buenas es mi primer mensaje, a ver si me podeis ayudar en un problema con un programa con estructuras.


Aqui las estructuras del programa.
struct actores{
    char nombre[30];
    int edad;
    char sexo[1];
};

struct peliculas {
    char titulo[50];
    char director[35];
    int calificacion;
    struct actores act[5];
};





Aqui un problema que tengo con un case del switch.


case 2:
        printf("\nIntroduce una pelicula para buscar: ");
        fflush(stdin);
        gets(peli);

        celda = buscarpeli(pelicula, peli);


        if(celda!= -1){
            printf("\nNombre del actor: ");
                    fflush(stdin);
                    gets(nom);

            celda2 = buscaractor(&pelicula[celda],celda, nom);


            introduciract(&pelicula[celda].act[celda2],  nom);


        }else{
            printf("\nNo se encuentra la pelicula");
        }

        break;


BUSCARPELI --> Aqui vemos primero una funcion que me busca la peli y me devuelve la posicion de esta.

BUSCARACTOR --> Le pido al usuario una pelicula y le paso la posicion de la pelicula, en una funcion donde me devuelve una posicion libre para introducir un actor en esa peli (en la funcion compruebo si el actor no esta repetido).

INTRODUCIRACT --> Por ultimo en la funcion 'introduciract' quiero introducir el actor, le paso por valor la posicion de la pelicula como antes pero COMO LE PASO LA POSICIÓN PARA INTRODUCIR EL ACTOR? COMO LE PASO LA VARIABLE "CELDA2"??????




Me da el error "un argumento de tipo *actores no es compatible con un parámetro de tipo *peliculas".

No entiendo el error y no se como pasarle la posicion celda2.


Un saludo y gracias.

Seyro97

Para ayudarte, necesitamos al menos las declaraciones de las funciones usadas en este código para así identificar el error
Carlos Peláez González. visita http://www.taringa.net/EnjoyC para muchos tutoriales!