Visualizzazione dei risultati da 1 a 10 su 10

Discussione: [C] input da file

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    144

    [C] input da file

    Salve ragazzi,
    sapreste dirmi l'esatta sequenza di istruzioni da implementare nella funzione MAIN() per importare alcune righe di testo da un file .txt esterno?
    Dovrebbe simulare l'input diretto da tastiera in pratica...ho provato con le funzioni gets(), stdin(),... ma non mi funziona!
    Grazie dell'aiuto!

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466

    Re: [C] input da file

    l'esatta sequenza di istruzioni
    Basta qualche indicazione?

    per importare alcune righe di testo da un file .txt esterno?
    Cioè, vuoi leggere da un file di testo delle righe?

    Dovrebbe simulare l'input diretto da tastiera
    Questo non l'ho capito ... che collegamento c'e' con il problema della lettura da file di testo?

    in pratica...ho provato con le funzioni gets(), stdin(),... ma non mi funziona!
    Facci vedere (e spiega) il codice che hai scritto e vediamo cosa non va ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    144
    int main() {
    int a;
    a=yylex();
    system("PAUSE");
    return 0;
    }

    Scrivendo il codice in questa maniera, inserisco una stringa da tastiera e quando premo invio parte la funzione yylex() (è un parser lessicale) che analizza la stringa inserita.
    Vorrei modificare il codice in modo tale che prenda queste stringhe automaticamente da un file di testo e non da tastiera...

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    Originariamente inviato da Mistral82
    int main() {
    int a;
    a=yylex();
    system("PAUSE");
    return 0;
    }

    Scrivendo il codice in questa maniera, inserisco una stringa da tastiera
    Ma il codice per l'input da tastiera dov'è?

    In ogni modo, sai aprire un file e leggere una riga? Sai usare le funzioni

    fopen
    fgets
    fclose


    ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    144
    Originariamente inviato da oregon
    Ma il codice per l'input da tastiera dov'è?

    In ogni modo, sai aprire un file e leggere una riga? Sai usare le funzioni

    fopen
    fgets
    fclose

    ?
    Si le so usare...comunque ho trovato questo pezzo di codice che in teoria dovrebbe dare l'opportunità di associare il flusso d'ingresso ad un file passato come argomento da riga di comando oppure direttamente allo standard input se il primo non è presente.


    int main (int argc, char** argv) {
    ++argc; --argv;
    if(argc > 0)
    yyin = fopen(argv[0], "r");
    else yyin = stdin;
    yylex();
    return 0;
    }


    Scrivendo però ad esempio "nome_file_eseguibile nome_file_di_testo" da linea di comando non funziona...

  6. #6
    Originariamente inviato da Mistral82
    yyin = fopen(argv[0], "r");


    Scrivendo però ad esempio "nome_file_eseguibile nome_file_di_testo" da linea di comando non funziona...
    con argv[0] ti riferisci a nome_file_eseguibile.

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    Originariamente inviato da Mistral82
    comunque ho trovato questo pezzo di codice che ...
    Cosa fai con

    ++argc; --argv;

    ?

    Cosa è yyin ?

    Neanche dovrebbe compilare ...

    Ma forse, tu vuoi qualcosa del genere ... da console DOS scrivi

    nome_file_eseguibile <nome_file_testo
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Utente bannato
    Registrato dal
    Feb 2004
    Messaggi
    2,803
    Originariamente inviato da oregon
    nome_file_eseguibile <nome_file_testo
    anch'io pensavo lo stesso, in ogni caso c'è da modificare quel codice che ha postato probabilmente trovato su yahoo answer , argc sempre vale almeno 1, ma questo è solo il primo problema

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    144
    Originariamente inviato da MacApp
    con argv[0] ti riferisci a nome_file_eseguibile.
    Originariamente inviato da oregon
    Ma forse, tu vuoi qualcosa del genere ... da console DOS scrivi

    nome_file_eseguibile <nome_file_testo
    Ho risolto...grazie mille dell'aiuto ad entrambe!
    Ho cambiato argv[0] in argv[1] ed ho scritto da console l'istruzione che mi ha detto oregon...ma perchè è necessario il segno '<'??

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    Originariamente inviato da Mistral82
    ho scritto da console l'istruzione che mi ha detto oregon...ma perchè è necessario il segno '<'??
    http://www.microsoft.com/resources/d....mspx?mfr=true
    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 © 2024 vBulletin Solutions, Inc. All rights reserved.