Hello, I tried to execute this code but when doing it it says that the exe has stopped working .. it does not show me any syntax error, please I would like you to indicate the error.
#include <stdio.h>
#include <stdlib.h>
typedef struct Registro
{
int valor;
struct Registro *sig;
}Nodo;
//INICIALIZAR LA LISTA
Nodo *crearLista(Nodo *apuntador)
{
return apuntador=NULL;
}
Nodo * crearNodo(int numero)
{
//CREANDO EL NODO
Nodo *registroNuevo;
registroNuevo=(Nodo*)malloc(sizeof(Nodo));
//SINO SE PUDO RESERVAR MEMORIA PARA EL REGISTRO
if(!registroNuevo)
{
printf("No se pudo crear memoria para el registro\n");
return NULL;
}
else
{
//SI SE PUDO RESERVAR LA MEMORIA SE INSERTAN LOS DATOS
registroNuevo->valor=numero;
registroNuevo->sig=NULL;
}
return registroNuevo;
}
Nodo *insertarEnLista(int numero, Nodo *apuntador)
{
Nodo *apuntadorAuxiliar ,*registroNuevo;
registroNuevo=crearNodo(numero);
//SI SE PUDO CREAR EL NODO QUE SE INSERTE EN LA LISTA
if(registroNuevo)
{
//SI LA LISTA ESTA VACIA
if(!apuntador)
apuntador=registroNuevo;
else
{
//SE USA EL APUNTADOR AUXILIAR PARA MOVERSE ENTRE LOS NODOS
apuntadorAuxiliar=apuntador;
while(apuntadorAuxiliar->sig)
apuntadorAuxiliar=apuntadorAuxiliar->sig;
apuntadorAuxiliar->sig=registroNuevo;
}
return apuntador;
}
return NULL;
}
void imprimirlista(Nodo * apuntador)
{
Nodo *apuntadorAuxiliar;
apuntadorAuxiliar=apuntador;
while(apuntadorAuxiliar->sig)
{
printf("%d-> ",apuntador->valor);
apuntadorAuxiliar=apuntadorAuxiliar->sig;
}
printf("NULL");
}
int main ()
{
Nodo *apuntador;
crearLista(apuntador);
insertarEnLista(9,apuntador);
imprimirlista(apuntador);
return 0;
}