Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: [c] lettura da file

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    63

    [c] lettura da file

    scusate io devo leggere delle righe da file ..
    e tra queste ci sono anche dei numeri


    codice:
      FILE *fd; 
      char buf[200];  
     char *res;   		
    /* apre il file */   
    fd=fopen("righe.txt", "r");  
     if( fd==NULL ) {     perror("Errore in apertura del file");     
    exit(1);   }   		
    /* legge e stampa ogni riga */ 
      while(1) 
    {     res=fgets(buf, 200, fd);    
     if( res==NULL )       
    break;     }
    per leggere le righe ho usato questo metodo se in una riga c'è un numero che poi voglio mettere in un vettore che devo fare?

    premesso io so quali sono le righe coi numeri

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Converti la stringa letta in un numero con una funzione tipo atol o simile (dipende dal numero ...).
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    63
    scusami l'ignoranza.. atol che parametri vuole?? cmq è un numero da 1 a 20..un int

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    63
    grazie ..risolto ..ho solo un ultimo quesito

    io ho un vettore

    char vettore[200];

    perchè quando faccio questo assegnamento mi dice che non è corretto???

    vettore=res;
    ho provato anche
    vettore=buf;

    ma mi dice che son di tipo incompatibile

  6. #6
    Utente di HTML.it L'avatar di KrOW
    Registrato dal
    Feb 2009
    Messaggi
    281
    Ciao . . . Il motivo è semplice . . .quando definisci un array, nel tuo caso char vettore[200], è come se definissi un puntatore const e quindi un espressione tipo:
    codice:
    vettore = buf;
    non è permessa siccome quello che fa è cambiare il valore di un puntatore const . . . Se la tua intenzione era quella di copiare la stringa buf in vettore prova con la funzione strcpy:
    codice:
    strcpy(vettore, buf);
    C++ 4ever
    496e2062696e6172696f206e6f6e2063692061767265737469 206e656d6d656e6f2020726f7661746f203a29

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da arre

    ma mi dice che son di tipo incompatibile
    La risposta comunque, la avresti in un qualsiasi libro di C.

    Queste sono le basi del linguaggio ... non capisco come si possa scrivere del codice utilizzando un linguaggio senza avere letto un libro di base ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    63
    Mi ero accorto dell'errore ,grazie comunque.
    So che son le basi ma è da molto che non programmo e spesso si perde più tempo su queste boiate che altro.
    Cmq son convinto che le cose si imparan più programmando che sui manuali.

    grazie comunque

    saluti

  9. #9
    Originariamente inviato da arre
    Mi ero accorto dell'errore ,grazie comunque.
    So che son le basi ma è da molto che non programmo e spesso si perde più tempo su queste boiate che altro.
    Cmq son convinto che le cose si imparan più programmando che sui manuali.

    grazie comunque

    saluti
    Se non ti studi bene un buon manuale, il tempo continuerai a perderlo proprio in quelle boiate.
    ;-)

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da arre
    Cmq son convinto che le cose si imparan più programmando che sui manuali.
    Secondo me e' una convinzione profondamente sbagliata ... comunque ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.