creo que es un error en la llamada a la función o en la asignacion de NuevoNodo.
Código
Gracias.
#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct _nodo{ char caracter; int repeticion; struct _nodo *sig; }_Nodo; typedef _Nodo *_pNodo; _pNodo CrearLista(char caracter); _pNodo Insertar(char caracter, _pNodo ListaInicial); int main() { struct _pNodo* apunta =NULL; struct _pNodo* aux2=NULL; struct _pNodo* inicio=NULL; _pNodo NuevoNodo; char a,aux; int cont=0,j,i,k; FILE *archivo; if (archivo == NULL) { } else { { cont++; } char v[cont]; { aux='0'; for(j=0;aux!=EOF;j++) { if(aux!=EOF) { v[j] = aux; } } for(i=0;i<=cont;i++) { Insertar(v[i],NuevoNodo); } } } return 0; } // printf("asd"); _pNodo CrearLista(char caracter) { _pNodo Lista; Lista->caracter = caracter; Lista->sig = NULL; return Lista; } _pNodo Insertar(char caracter, _pNodo ListaInicial) { _pNodo NuevoNodo; _pNodo Auxiliar = ListaInicial; NuevoNodo->caracter = caracter; NuevoNodo->sig = NULL; if (ListaInicial->sig == NULL) { ListaInicial->sig = NuevoNodo; } else { while(Auxiliar->sig != NULL) { Auxiliar = Auxiliar->sig; } Auxiliar->sig = NuevoNodo; } return NuevoNodo; }