Foros del Web » Programación para mayores de 30 ;) » C/C++ »

porfavor ayuda con este codigo de c

Estas en el tema de porfavor ayuda con este codigo de c en el foro de C/C++ en Foros del Web. hola, lo que pasa es que me salen unos lnk2019 eorrores en el codigo apartir de la funcion llamada manu_adicionar, quisiera saber si alguien me ...
  #1 (permalink)  
Antiguo 03/05/2008, 11:56
 
Fecha de Ingreso: mayo-2008
Mensajes: 1
Antigüedad: 16 años
Puntos: 0
porfavor ayuda con este codigo de c

hola, lo que pasa es que me salen unos lnk2019 eorrores en el codigo apartir de la funcion llamada manu_adicionar, quisiera saber si alguien me podria revisar el codigo y decirme lo que esta mal, gracias.


CODIGO:

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
struct objeto {
char tipo[20];
int etapa;
int codigo;
char funcion[200];
};
struct etapa {
struct objeto obj[10];
};
struct lista {
char elemento[20];
};

void menu (void);
void menu_adicionar (struct etapa *);
void adicionar_nuevo (struct lista *);
void adicionar_existente (struct lista *, struct etapa *);

void main (void)
{
menu ();
system ("cls");
}

void menu (void) {
struct etapa et[10];
int opcion;
do
{
printf ("*****************MENU PRINCIPAL*****************\n");
printf ("\t\t1. CREAR ELEMENTO NUEVO");
printf ("2. ELIMINAR UN ELEMENTO");
printf ("3. EDITAR UN ELEMENTO");
printf ("4. CONSULTAR UN ELEMENTO");
printf ("5. CAMBIAR UN ELEMENTO");
printf ("6. MOSTRAR INFORMACION DE UNA ETAPA");
printf ("7. SALIR");
scanf ("%d",&opcion);
system ("cls");
switch (opcion)
{
case 1:
menu_adicionar (&et[10]);
break;
case 7:
opcion=7;
break;
};
}
while (opcion!=7);
}

void menu_adicionar (struct etapa *et[10])
{
struct lista elem[20];
int u;
do
{
printf ("**********MENU - ADICIONAR ELEMENTO**********\n");
printf ("\t\t1. ADICIONAR ELEMENTO NUEVO A LA LISTA");
printf ("\t\t2. ADICIONAR ELEMENTO EXISTENTE DE LA LISTA");
printf ("\t\t3. VOLVER AL MENU PRINCIPAL");
printf ("\t\t4. SALIR");
scanf ("%d",&u);
system ("cls");
switch (u)
{
case 1:
adicionar_nuevo (&elem[20]);
break;
case 2:
adicionar_existente (&elem[20],et[10]);
break;
case 3:
menu ();
break;
case 4:
u=4;
};
}
while (u != 4);
}
void adicionar_nuevo (struct lista *elem[20])
{
int i;
for (i=0;i<20;i++)
{
printf ("DEME EL NOMBRE DEL ELEMENTO QUE DESEA AGREGAR A LA LISTA");
gets (elem[i] -> elemento);
}
}

void adicionar_existente (struct lista *elem[20], struct etapa *et[10])
{

}
  #2 (permalink)  
Antiguo 05/05/2008, 12:26
Avatar de Mephisto  
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 184
Antigüedad: 18 años, 4 meses
Puntos: 3
Re: porfavor ayuda con este codigo de c

Código:
menu_adicionar (&et[10]);
Al mandar esto le indicas al compilador que envias el elemento 10, el cual no existe, tienes elementos del 0 al 9, recuerda que la definicion de los arrays es de 0 a n-1

Código:
menu_adicionar (&et);
Código:
void menu_adicionar (struct etapa *et[10])
No es necesario que le mandes el tamaño del array

Código:
void menu_adicionar (struct etapa *et[])
Algo similar esta pasando con las otras funciones

Es de un vistazo lo que veo...
__________________
Saludos...

Todos somos sabios, solo que en diferentes disciplinas...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:05.