SoloCodigo
Programación General => C/C++ => Mensaje iniciado por: ElNapster en Martes 23 de Mayo de 2006, 18:20
-
Que tal a todos, tengo un problemita con un programita, estoy haciendo un programa con Listas doblemente encadenadas circulares, y solo estoy creando el nodo y la funcion de ingresar datos y desplegar los datos, pero cuando lo corro me da un error, y segun mis copias esta bien pero a lo mejor tengo al malo por ahi el codigo es el siguiente:
#include<iostream.h>
#include<stdio.h>
#include<dos.h>
#include<conio.h>
#include<fstream.h>
#include<string.h>
#include<ctype.h>
#include <time.h>
struct nodo
{
int t;
char desc[10];
nodo *sig,*ant;
};
nodo *lista,*head;
nodo *crear_nuevo(int x)
{
nodo *nuevo;
nuevo=new(nodo);
if (nuevo)
{
nuevo->t=x;
nuevo->sig=nuevo->ant=NULL;
}
return (nuevo);
}
void insertar(int x)
{
nodo *nuevo,*ult;
nuevo=crear_nuevo(x);
if (lista==NULL)
{
lista=nuevo;
}
else
{
if (lista->ant==NULL)
{
ult=lista;
}
else
{
ult=lista->ant;
}
ult->sig=nuevo;
nuevo->sig=ult; ACA MARCA ERROR
nuevo->ant=ult;
ult->ant=nuevo;
}
/*else
cout<<"Memoria insuficiente";
getch();*/
}
void mostrar(nodo *nodos)
{
if (nodos)
{
if (nodos->sig!=lista)
{
cout<<"INGRESADOS "<<nodos->t;
mostrar(nodos->sig);
}
}
}
void main()
{
insertar(2);
insertar(5);
insertar(9);
mostrar(lista);
getch();
}
muchas gracias por la ayuda
:comp:
-
MMMMMMMM por lo menos di que dice el error <_<
-
<_< <_<
je je je je je en primera no tienes error y el unico error es ponerle en tu codigo "ACA MARCA ERROR " y obviamente entras en un ciclo infinito lo mejor es pensar un poco y no solo copiar del libro.
-
<_< <_<
Por cierto no somos compiladores.
-
no, claro que me va a marcar error al poner eso pero les pongo donde me marca el error, es alli donde se posiciona al salir del programa.
:lol:
-
<_<
Tambien escribi que estas entrando en un ciclo infinito solo revisalo y veras