Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [c] lettura da file

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    13

    [c] lettura da file

    Salve ho la necessita di leggere da un file e trasferire il contenuto alla parte informazione di una lista.
    Premetto il programma funziona, solo che alle volte mi restituisce simboli strani.

    la lista è:

    codice:
    struct elemento
    {
           char informazione[100];
           struct elemento *puntatore;
    };
    Nello stesso programma ho creato il file cosi':

    codice:
    char buf1[100]:
    ...
    fp1=fopen("FILE1.txt","w");
    fputs(gets(buf1),fp1);
    fclose(fp1);
    e creato il primo elemento cosi'

    codice:
         p=(struct elemento *)malloc(sizeof(struct elemento));
         fp1=fopen("FILE1.txt","r");
         fread(buf1,1,100,fp1);
         fclose(fp1);
         strcpy(p->informazione,buf1);
    
    poi ho passato la lista ad una funzione e visullizzata
    
     while(P!=NULL)
         {
            printf("%s\n",P->informazione);
            P=P->puntatore;
         }
    Sapete dirmi se ho sbagliato qualcosa ?

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    466
    Se puoi posta il codice completo, se non sono 100 righe , possibilmente usando i tag codes e indentato come Dio comanda..

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    13
    codice:
    #include<stdio.h>
    #include<malloc.h>
    #include<string.h>
    
    void inserimento(struct elemento *);
    void visualizzazione(struct elemento *);
    
    struct elemento
    {
           char informazione[100];
           struct elemento *puntatore;
    };
    
    main()
    {
    struct elemento *lista;
    FILE *fp1,*fp2;
    char buf1[100],buf2[100];
    fp1=fopen("FILE1.txt","w");
    fp2=fopen("FILE2.txt","w");
    fputs(gets(buf1),fp1);
    fputs(gets(buf2),fp2);
    fclose(fp1);
    fclose(fp2);
    inserimento(lista);
    }
    
    void inserimento(struct elemento *p)
    {
         FILE *fp1,*fp2;
         char buf1[100],buf2[100];
         struct elemento *paus;
         p=(struct elemento *)malloc(sizeof(struct elemento));
         fp1=fopen("FILE1.txt","r");
         fread(buf1,1,100,fp1);
         fclose(fp1);
         strcpy(p->informazione,buf1);
         paus=p;
         paus->puntatore=(struct elemento *)malloc(sizeof(struct elemento));
         paus=paus->puntatore;
         fp2=fopen("FILE2.txt","r");
         fread(buf2,1,100,fp2);
         fclose(fp2); 
         strcpy(paus->informazione,buf2);
         paus->puntatore=NULL;
         visualizzazione(p);
        
    }
    
    void visualizzazione(struct elemento *P)
    {
         while(P!=NULL)
         {
            printf("%s\n",P->informazione);
            P=P->puntatore;
         }
    getchar();
    }

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    13
    Penso, forse, il probelma sia

    strcpy(p->informazione,buf1);

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304

    Moderazione

    Ti invito a prendere visione del Regolamento interno per conoscere le norme di partecipazione al forum.

    In particolare, al punto 6 che fa riferimento alle modalità di posting del codice.

    Come avrai potuto vedere, così come l'hai postato è praticamente illeggibile e caotico.

    L'uso dei tag CODE, se il codice è indentato, lo rende leggibile.

    PS: ti era anche stato chiesto da simo_85


    Modifico io.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    13

    Re: Moderazione

    Originariamente inviato da LeleFT
    Ti invito a prendere visione del Regolamento interno per conoscere le norme di partecipazione al forum.

    In particolare, al punto 6 che fa riferimento alle modalità di posting del codice.

    Come avrai potuto vedere, così come l'hai postato è praticamente illeggibile e caotico.

    L'uso dei tag CODE, se il codice è indentato, lo rende leggibile.

    PS: ti era anche stato chiesto da simo_85


    Modifico io.


    Ciao.
    scusami

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.