| | | OFFLINE | | Post: 257 Post: 246 | Registrato il: 02/03/2016 Registrato il: 03/03/2016 | Sesso: Maschile | |
|
29/11/2016 11:15 | |
queste funzioni- istruzioni non funziona più nei nuovi compilatori 16) Operazioni input e outputNel mio testo si parla ancora di stream per aprire i file e tanto altro, nel nostro compilatore alcuni comandi non sono più gestiti e danno errore di compilazione , ecco un elenco di istruzioni che non vengono più impiegate dal nostro compilatore, https://msdn.microsoft.com/library/windows/apps/jj606124.aspx dove non possiamo utilizzare altri comandi alternativi, cosi alcuni capitoli del libro non saranno presi in considerazione come esempi , nello stesso modo vedremo tutti i comandi o funzioni in uso.Per eseguire l’ operazioni di Input e Output si utilizza il file Header < fstream > e queste classi derivano dalla classe padre IOS come visto i stream sono 3 input, output, input/output dove ogni stream va dichiarato con la sua classe , dove input ifstream, output ostream , fstream serve per le operazioni di input/output queste classi serve per l’ apertura e la chiusura dei file , se desideriamo lavorare in un file con operazioni su descritte possiamo fare :ifstream in; // input ofstream out; // output fstream io; // input/outputOra vediamo open() che è una funzione dei sopracitati stream dove il suo prototipo è :void ifstream::open(const char* nomefile, ios::openmode modo ios::in);void ofstream::open(const char* nomefile, ios::openmode modo ios::out | ios::trunc);void fstream::open(const char* nomefile, ios::openmode modo ios::in | ios::out);Il nomefile è il nome che useremo per il file che utilizzeremo, è possibile includere anche il percorso di tale file , il modo è come verrà aperto il file e le modalità sono valori definiti da openmode attraverso la classe ios_base i modi sono:ios::app ios::ate ios::binary ios::in ios::out ios::truncPer usare o combinare più di queste classi si utilizza l’ operatore OR | , vediamo cosa serve ogni modalità che abbiamo citato : ios::app = append usato solo da output , l’ output viene aggiunto alla fine del file. ios::ate usato per operazioni di input e output posiziona il puntatore alla fine del file aperto . ios::binary apre file in modalità binaria se il file viene aperto in modalità testo può avvenire traduzioni dei caratteri come il ritorno fine linea o fine riga , in modalità binaria non viene eseguite nessuna traduzione , i file sia binari che di testo possono essere aperti sia in un modo che nell’ altro l’ unica differenza è la traduzione dei caratteri. ios::in usato per operazioni d’ input dati per operazioni d’input . ios::out usato per operazioni d’ output , dati per operazioni d’output . ios::trunc , con questo comando si tronca a zero i file preesistenti con la conseguenza della distruzione del contenuto del file precedentePer aprire i file con i stream la prima cosa da è controllare che il file stesso sia aperto con successo per far questo si usa una funzione booleanea is_open() utilizzando , se il file è aperto ci restituisce true altrimenti false :if (!nomefile.is_open()) << " file non aperto \n ";per chiudere lo stesso file prima aperto si usa la funzione close() : nomefile.close;Per leggere e scrivere dati non formattati è possibile usare le funzioni che legge e scrive un carattere get() legge e put() scrive e questi file devono essere aperti in modalità binaria altro modo per leggere i dati binari sono le funzioni read () legge e write() scrive queste funzioni legge e scrive dei buffer di caratteriLa funzione getline () anzi che leggere un buffer di caratteri legge solo una linea di caratteri che è il buffer ma la differenza tra la funzione get e getline , legge e elimina il delimitatore dello stream d’ inputNella lettura di un file si deve vedere la fine dello stesso file per questo si utilizza la funzione eof() il prototipo è bool eof();
questa funzione restituisce un valore booleano true quando raggiunge la fine del file , caso contrario rimane con false . Un’altra funzione membro è ignore() serve di leggere e ignorare num di caratteri presenti nello stream d’ input (il valore normale rimane 1) con delim è il carattere che permette di usare EOF :istream &ignore( streamsize num=1 , int_type delim= EOF);La funzione peek() permette di conoscere il prossimo carattere presente nello stream , la funzione putback() inserisce di nuovo l’ ultimo carattere che aveva letto . La funzione flush() questa funzione serve in output per far scrivere o scaricare il buffer , di norma il buffer si scarica quando la sua dimensione è piena con la possibilità di perdere i dati in caso di precarietà del sistema usando ostream &flush(); possiamo scaricare prima il buffer e mettere in salvo i nostri dati lo svotamento del buffer può essere fatto con la chiusura del file e questo sarebbe il lavoro naturale come con la chiusura normale dello stesso programmaAltre funzioni che lavorano con i stream sono istream seekg() ; e ostream seekp (); queste funzioni permette di accedere a un file in modo non sequenziale …. Ci sono altre funzioni da vedere , come già detto nel nostro nuovo compilatore non funzionanoCiao grazie da ByMpt-Zorobabele Testo PDF aggiornato con questo ultimo capitolo inserito lo trovate : http://www.freeforumzone.com/d/11266858/Elenco-figure-dei-comandi-della-programmazione-C-TESTO-PDF/discussione.aspx Anche qui di queste discussioni che inserisco faccio un testo PDF da poter scaricare tutto il mio materiale è da utilizzare come desiderate per il testo PDF vedi cartella dedicata , ogni volta cambia ubicazione del testo allora cambio il file e il testo lo inserisco dentro la cartella < file aggiornato ad oggi >
www.freeforumzone.com/d/11266858/Elenco-figure-dei-comandi-della-programmazione-C-TESTO-PDF/discussi...
|