elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / almacenar vector de caracteres en una lista enlazada en: 24 Octubre 2017, 20:10 pm
hola, estoy tratando de almacenar un vector de caracteres que proviene de un fichero, en una lista, llevo esto del codigo pero no entiendo el motivo porque el programa se cae.
creo que es un error en la llamada a la función o en la asignacion de NuevoNodo.

Código
  1.  
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <string.h>
  5.  
  6. typedef struct _nodo{
  7.        char caracter;
  8.        int repeticion;
  9.        struct _nodo *sig;
  10. }_Nodo;
  11. typedef _Nodo *_pNodo;
  12. _pNodo CrearLista(char caracter);
  13. _pNodo Insertar(char caracter, _pNodo ListaInicial);
  14.  
  15.  
  16. int main()
  17. {
  18.    struct _pNodo* apunta =NULL;
  19.    struct _pNodo* aux2=NULL;
  20.    struct _pNodo* inicio=NULL;
  21.    _pNodo NuevoNodo;
  22.    char a,aux;
  23.    int cont=0,j,i,k;
  24.    FILE *archivo;
  25.    archivo=fopen("texto.txt","r");
  26.    if (archivo == NULL)
  27.        {
  28.            printf("\nError de apertura del archivo. \n\n");
  29.        }
  30.        else
  31.        {
  32.            printf("\nEl contenido del archivo de prueba es: \n\n");
  33.        while((a = fgetc(archivo)) != EOF)
  34.    {
  35. cont++;
  36.    }
  37.    char v[cont];
  38.    rewind(archivo);
  39.  
  40.  
  41.    for(i = 0; !feof(archivo);i++)
  42.        {
  43.        aux='0';
  44.        for(j=0;aux!=EOF;j++)
  45.        {
  46.            aux= fgetc(archivo);
  47.            if(aux!=EOF)
  48.        {
  49.            v[j] = aux;
  50.            }
  51.        }
  52.        for(i=0;i<=cont;i++)
  53.        {
  54.        Insertar(v[i],NuevoNodo);
  55.        }
  56.        }
  57.        fclose(archivo);
  58.        }
  59.  
  60.        system("pause");
  61.        return 0;
  62. }
  63.               // printf("asd");
  64. _pNodo CrearLista(char caracter)
  65. {
  66.    _pNodo Lista;
  67.  
  68.    Lista = (_pNodo) malloc (sizeof(_Nodo));
  69.    Lista->caracter = caracter;
  70.    Lista->sig = NULL;
  71.  
  72.    return Lista;
  73. }
  74. _pNodo Insertar(char caracter, _pNodo ListaInicial)
  75. {
  76.    _pNodo NuevoNodo;
  77.    _pNodo Auxiliar = ListaInicial;
  78.    NuevoNodo =  malloc(sizeof(_Nodo));
  79.  
  80.    NuevoNodo->caracter = caracter;
  81.    NuevoNodo->sig = NULL;
  82.  
  83.    if (ListaInicial->sig == NULL)
  84.    {
  85.        ListaInicial->sig = NuevoNodo;
  86.  
  87.    }
  88.    else
  89.    {
  90.        while(Auxiliar->sig != NULL)
  91.        {
  92.            Auxiliar =  Auxiliar->sig;
  93.        }
  94.        Auxiliar->sig = NuevoNodo;
  95.  
  96.    }
  97.    return NuevoNodo;
  98. }
  99.  
Gracias.  :D
2  Programación / Programación C/C++ / Ayuda con arreglo en C en: 12 Julio 2016, 18:54 pm
Hola, estoy iniciándome en esto de la
programación y estoy algo detenido en un problema, consiste en tomar un archivo txt y almacenarlo en una matriz, esto ya lo hice, pero luego me pide que el usuario ingrese caracteres y el programa debe mostrar las palabras que incluyan los caracteres ingresados.
por ejemplo mi txt muestra esto:
-chile
-españa
-argentina
-china
y el usuario ingresa los siguientes caracteres :"chi".
el programa debe mostrar: chile y china.
Espero que se entienda y gracias.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines