Prueba con las modificaciones que hice. Cambie lso scanf....estabas pasando mal las referencias.
una variable definida asi:
char cadena[100];
Si usa la variable cadena sin usar los cochetes, es un puntero a char, asi que no necessita uso de * o & para ser usada en el scanf.
En cambio un puntero si necesita del operador & que devuelve la ubicacion en memoria del puntero.
Espero que se entienda la explicacion!
Código C++:
Ver originalvoid funcion (struct estructura *vector_estructura, int *n, FILE *fichero)
{
fe
=fopen("archivo.dat","w"); printf("Escribe el dato1 del empleado: "); scanf("%s",vector_estructura
[*n
].
dato1); printf("Escribe el dato2bre del empleado"); scanf("%s",vector_estructura
[*n
].
dato2); printf("Escribe el dato2bre del empleado"); scanf("%d",&(vector_estructura
[*n
].
dato3)); fprintf(fe
,"%s \n%s \n%d",vector_estructura
[*n
].
dato1,vector_estructura
[*n
].
dato2,vector_estructura
[*n
].
dato3); *n++;
}