Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    92

    [c] apertura di un file

    Salve raga, sto cercando di capire meglio come si apre un file, allora ho cercato di creare un prog. ke mi apra un file e me lo stampi a video, xò mi sa ke sbaglio qlk o tutto :bubu: :bubu:
    Ve lo posto:

    #include <stdlib.h>
    #include <stdio.h>

    int main(void)
    {
    FILE *lista;
    char c;

    lista = fopen("lista_dvd.txt", "r");
    c = (getc(lista));
    printf("%s", c);
    system("pause");
    return 0;
    }


    Mi dite dove stanno gli errori? pls?





    Peppe

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    92
    Azz..... uno dei tanti sono riuscito a vederlo, mi son dimenticato di chiudere il file....

  3. #3
    codice:
    ...
    while(1)
    {
        fread(&c, sizeof(char), 1, lista);
        if(feof(lista)) break;
        fwrite(&c, sizeof(char), 1, stdout);
    }
    fclose(lista);
    ...
    ...Terrible warlords, good warlords, and an english song

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    92
    fread(&c, sizeof(char), 1, lista);
    Scusa Johnny, come mai stai allocando memoria?

    mhhhhh...
    Pensavo fosse + facile, mi sa ke ancora è presto x aprire un file...
    Inoltre ci sono comandi che ancora nn conosco....
    Vabbè tnx...





    Peppe

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    92
    seee vabbe nn ne dico una giusta, scusa volevo dire come mai hai scritto:

    fread(&c, sizeof(char), 1 , lista);
    Scusa ma nn ho capito ..

  6. #6
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    fread(&c, sizeof(char), 1 , lista);

    lista: FILE da cuio leggere;

    sizeof(char): è la dimensione del tipo di dati da leggere, in quanto stai leggendo caratteri,

    1: numero di caratteri da leggere

    &c: indirizzo a partire dal quale inserire i dati letti, in questo caso leggi un solo carattere che sarà memorizzato nella variabile c.

    Per leggere una riga alla volta puoi usare:

    fgets(c, 10, file);


    in cui file indica il file da cui leggere, c deve essere un puntatore a char già allocato con malloc o un array di caratteri, 10 è la lunghezza massima di una riga. Esempio: leggo una alla volta le righe di un file memorizzandole una alla volta in un array c, cancellando di volta in volta la riga precedente:

    codice:
        char c[100];
        while(fgets(c, 10, file)!=NULL) { 
              printf("String: %s", c);        
        }

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    30
    prova anche a inserire la libreria per lo stream dei file...


    codice:
    #include <fstream.h>

  8. #8
    Originariamente inviato da mostec
    prova anche a inserire la libreria per lo stream dei file...


    codice:
    #include <fstream.h>
    ho capito (leggendo anche gli altri thread) che preferisci il C++,
    ma qua si sta discutendo (esclusivamente) di C,
    e poi, di funzioni per l'input/output verso i file
    in C, ne esistono a sufficienza (e sono anche più leggere degli stream del C++).
    ...Terrible warlords, good warlords, and an english song

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    30
    scusami...
    io il C lo faccio a scuola solo che non mi è stato mai specificato se fosse c++ o c semplice...

    pensando che sarei al 3° anno di ragioniere programmatore e leggendo in giro che il C è più semplice del C++ allora ho pensato che facevo il C...

    Scusa il giro di parole

  10. #10
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    92
    Ok grazie a tutti, anche se nn so il xkè ma mi causa un errore, la solita finestra ke dice: questo programma ha eseguito un operazione nn valida e sarà terminato .
    Però se gli do input da dos funziona....

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.