me cuestan los punteros
He resuelto ejercicios muy similares en donde todos tenian estos tipo de prototipos:
void cargar(struct datos[], int *);
void modificar(struct datos *);
Pero ahora tengo un prototipo que nunca use y no se como hacerlo, como este:
void carga_productos(struct produ *);
O sea, en ambos casos, el que me sale y el que no, debo hacer una carga inicial de datos, pero con diferentes prototipos. Este ultimo no se como usarlo. Acá dejo lo que yo hacia con el prototipo que me salia...
struct datos{
char legajo[10];
int promTrim[3];
};
void cargar(struct datos[], int *);
struct datos *buscar(struct datos[], char *, int);
void modificar(struct datos *);
main()
{
...
struct datos info_alu[3], *p;
cargar(info_alu, &cantalu);
p=buscar(info_alu, leg, cantalu);
modificar(p);
...
}
void cargar(struct datos info_alu[], int *cantalu)
{
char rta;
int i=0;
printf("Iniciando programa 19.03.2009n");
printf("Cargar datosn");
rta=' ';
while(rta!='n' && i<3) {
printf("Ingresar legajo: ");
flushall();
gets(info_alu[i].legajo);
printf("Ingrese promedio 1: ");
flushall();
scanf("%d", &info_alu[i].promTrim[0]);
printf("Ingrese promedio 2: ");
flushall();
scanf("%d", &info_alu[i].promTrim[1]);
printf("Ingrese promedio 3: ");
flushall();
scanf("%d", &info_alu[i].promTrim[2]);
i++;
printf("Continuar? s/n: ");
flushall();
scanf("%c", &rta);
};
*cantalu=i;
}
En fin....como hago la carga con este prototipo??
void carga_productos(struct produ *);
void cargar(struct datos[], int *);
void modificar(struct datos *);
Pero ahora tengo un prototipo que nunca use y no se como hacerlo, como este:
void carga_productos(struct produ *);
O sea, en ambos casos, el que me sale y el que no, debo hacer una carga inicial de datos, pero con diferentes prototipos. Este ultimo no se como usarlo. Acá dejo lo que yo hacia con el prototipo que me salia...
struct datos{
char legajo[10];
int promTrim[3];
};
void cargar(struct datos[], int *);
struct datos *buscar(struct datos[], char *, int);
void modificar(struct datos *);
main()
{
...
struct datos info_alu[3], *p;
cargar(info_alu, &cantalu);
p=buscar(info_alu, leg, cantalu);
modificar(p);
...
}
void cargar(struct datos info_alu[], int *cantalu)
{
char rta;
int i=0;
printf("Iniciando programa 19.03.2009n");
printf("Cargar datosn");
rta=' ';
while(rta!='n' && i<3) {
printf("Ingresar legajo: ");
flushall();
gets(info_alu[i].legajo);
printf("Ingrese promedio 1: ");
flushall();
scanf("%d", &info_alu[i].promTrim[0]);
printf("Ingrese promedio 2: ");
flushall();
scanf("%d", &info_alu[i].promTrim[1]);
printf("Ingrese promedio 3: ");
flushall();
scanf("%d", &info_alu[i].promTrim[2]);
i++;
printf("Continuar? s/n: ");
flushall();
scanf("%c", &rta);
};
*cantalu=i;
}
En fin....como hago la carga con este prototipo??
void carga_productos(struct produ *);
A ver si lo he entendido bien:
Haces referencia a ejercicios ya resueltos en los que has utilizado los dos prototipos que citas al principio. Veamos el segundo:
void modificar(struct datos *);
Dices tener un problema con el prototipo de función
void carga_productos(struct produ *);
Ambas funciones son similares: Una función de tipo void que recibe como parámetro un puntero a una estructura de datos. Si has hecho la primera función y te funciona correctamente, no veo el problema. Simplemente, sigue el mismo proceso: Escribe el prototipo (ya lo tienes), y luego implementa la función, que, por el nombre, supongo que pedirá o leerá de alguna parte los datos correspondientes a un determinado producto.
¿No será el problema que has olvidado declarar la estructura produ, y la(s) correspondiente(s) variable(s) de este tipo?
Saludos,
Haces referencia a ejercicios ya resueltos en los que has utilizado los dos prototipos que citas al principio. Veamos el segundo:
void modificar(struct datos *);
Dices tener un problema con el prototipo de función
void carga_productos(struct produ *);
Ambas funciones son similares: Una función de tipo void que recibe como parámetro un puntero a una estructura de datos. Si has hecho la primera función y te funciona correctamente, no veo el problema. Simplemente, sigue el mismo proceso: Escribe el prototipo (ya lo tienes), y luego implementa la función, que, por el nombre, supongo que pedirá o leerá de alguna parte los datos correspondientes a un determinado producto.
¿No será el problema que has olvidado declarar la estructura produ, y la(s) correspondiente(s) variable(s) de este tipo?
Saludos,