pero me sale este error
si alguien me ayuda lo agradeceria
O:\collect2.exe [Error] ld returned 1 exit status
Código
#include "stdio.h" #include "conio.h" #include "string.h" #include "windows.h" #include "stdlib.h" #include "time.h" #include "iostream" #include "stdlib.h" struct nodo{ int informacion; struct nodo *siguiente; }; int menu(); void agregar_nodo(); void listar(); void insertfinal(); nodo *inicio = NULL, *nuevo = NULL, *aux; main() { int opc=0; while(opc!=8) { switch (opc) { case 1: agregar_nodo(); break; case 2: insertfinal(); break; case 3: break; case 4: listar(); break; } opc=menu(); } } int menu() { int opc; printf("\n\n"); printf("1. Agregar elementos al inicio de la lista \n"); printf("2. Agregar elementos al final de la lista \n"); printf("3. Agregar elementos despues de \n"); printf("4. Listar elementos \n"); printf("5. Buscar elementos \n"); printf("6. Eliminar elementos \n"); printf("7. Eliminar lista \n"); printf("8. Fin de la ejecucion \n"); printf("\n\n"); printf("Seleccione una opcion \n"); scanf("%d",&opc); printf("\n\n"); printf("la opcion elegida es: %d",opc); printf("\n\n"); return opc; } typedef struct nodo *Tlista; void agregar_nodo() { int elem; printf("ingrese el elemento de la lista \n"); scanf("%d",&elem); nuevo = new nodo; nuevo->informacion=elem; nuevo->siguiente=inicio; inicio = nuevo; printf("\n elemento agregado satisfactorimente \n"); } void listar() { aux=inicio; while(aux!=NULL) { printf("\n elemento: %d",aux->informacion); aux = aux -> siguiente; } } void insertfinal(int elem,nodo *lista) { nodo *nuevo, *aux2=lista; nuevo = new nodo; nuevo->informacion = elem; nuevo->siguiente = NULL; if(aux2 == NULL) { lista = nuevo; } else { while(aux2->siguiente != NULL) { aux2 = aux2->siguiente; } aux2->siguiente = nuevo; } }