Search code examples
csyntax-error

Error-expected expression before FILE in fputs


Hiiii. This is my first time doing an little application with C. I have this problem:

void crearCuenta(){
    char usuario[60], contrasenia[20];
    FILE *cuentas;
    
    printf("Usuario: ");
    scanf("%s", usuario);
    printf("Contrasena: ");
    scanf("%s", contrasenia);

    do {
        printf("La ocontrasena debe tener un minimo de 8 caracteres y un maximo de 20: ");
        scanf("%s", contrasenia);
    }while(sizeof(contrasenia)>8 || sizeof(contrasenia)>20);

    cuentas = fopen("saveData.txt", "a");
    if (cuentas == NULL) puts("Error al abrir el archivo. \n");
    fputs(usuario, FILE *cuentas);
    fputs(contrasenia, FILE *cuentas);
    fclose(cuentas);

    printf("Su cuenta ha sido creada exitosamente");
}

Error:

70 16 [Error] expected expression before 'FILE'
71 21 [Error] expected expression before 'FILE'

I don't know what I can do. Also I tried to do a header file, but for some reason appear that "crearCuenta it's not defined", but I defined it in the header file. What I can do?


Solution

  • As @Keylum states, your necessary answer should be: Change fputs(usuario,FILE *cuentas) to

    fputs(usuario,cuentas);
    

    and fputs(contrasenia,FILE *cuentas) to

    fputs(contrasenia,cuentas);