Fondamenti di Informatica
|
|
- Adamo Toscano
- 7 anni fa
- Visualizzazioni
Transcript
1 Cosa sono i file? Un file è un archivio di dati che puo essere registrato su un supporto di massa (testo, lettera, programma, archivio di dati, ecc.) Fondamenti di Informatica 12. Linguaggio C - Gestione di file Il file è l unità logica di memorizzazione dei dati su dispositivi di memoria di massa Il file permette: una memorizzazione persistente dei dati una memorizzazione non limitata dalle dimensioni della memoria centrale Un file si puo anche considerare come un insieme di record correlati tra loro (ossia un insieme di informazioni strutturate e organizzate in un archivio) similitudine con le tabelle (array di strutture) Corso di Laurea in Ingegneria Informatica e dell Automazione A.A Semestre Prof. Giovanni Pascoschi Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 2 Tipiche operazioni su file Tipi di file (di testo e binari) Apertura del file : si stabilisce un collegamento logico tra la memoria centrale e l unità di memoria di massa che contiene il file sul quale si vogliono fare operazioni di lettura/scrittura viene riservata un area di memoria centrale buffer di I/O Chiusura del file : si chiude il collegamento logico tra la memoria centrale e l unità di memoria di massa che contiene il file (eseguito dopo la relativa apertura) Lettura dal file : si trasferiscono i dati dal file alla memoria centrale (input da file) Scrittura sul file : si trasferiscono i dati dalla memoria centrale al file (output su file) La tipologia di file di testo deriva essenzialmente dalla loro leggibilità File di testo (o ASCII) : i file di testo contengono i caratteri di fine riga (EOL End Of Line) e a ciascun byte corrisponde un carattere codificato in ASCII facilmente leggibili (vecchio approccio) Esempio: file sorgenti, bolle/fatture nei vecchi programmi Notepad File binari : i file binari sono considerati come un unico flusso continuo di bit, anch essi raggruppati in byte, ma non necessariamente distinti l uno dall altro (moderno approccio) Esempio : file eseguibili, documenti Word/Excel, ecc Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 3 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 4
2 Modalità di accesso ai file File con record a lunghezza fissa/variabile Accesso sequenziale: in fase di lettura i dati possono essere ritrovati (sequenzialmente) scorrendo tutti i record del file a partire dal primo fino ad arrivare all ultimo, nello stesso ordine con il quale sono stati registrati Accesso diretto (random/casuale): nel caso di utilizzo di record a lunghezza fissa aventi pertanto la stessa struttura, l accesso in lettura alla specifica componente puo avvenire direttamente, identificando la sua posizione all interno del file Record a lunghezza fissa: Nelle maggior parte delle applicazioni gestionali gli archivi nelle memorie di massa interessano file formati da record aventi la stessa struttura (record a struttura fissa/lunghezza fissa) sia accesso sequenziale che diretto Record a lunghezza variabile: In alcune applicazioni particolari i record non hanno lunghezza fissa (p.e. file sorgenti in cui le singole righe terminano con un EOL) solo accesso sequenziale Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 5 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 6 Esempio Dichiarazione del file struct Persona { char indirizzo[20]; float stipendi[12]; ; typedef struct Persona dip; dip Dipendente;... La dichiarazione di un file avviene con la seguente sintassi: FILE * fp; puntatore a una struttura di informazioni che si riferiscono al file utilizzato (p.e. locazione del buffer I/O, posizione corrente nel buffer durante la lettura e scrittura, ecc.) Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 7 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 8
3 Apertura del file Modalità di accesso al file La sintassi per l apertura di un file è la seguente: fp = fopen( nomefisico, modalità ); fp è il puntatore al file o descrittore del file (nome interno del file) nomefisico è il nome del file sul supporto di massa (attenzione percorso!) modalità indica le modalità di accesso al file se fp ritorna un valore NULL significa che ci sono stati del problemi ad aprire il file N.B.: una volta che si apre un file, esso rimane aperto finchè non viene chiuso esplicitamente dal programma o quando il programma stesso termina file binari file di testo modalità commenti rb r solo lettura wb w solo scrittura r+b r+ lettura & scrittura w+b w+ scrittura & lettura ab a a+b a+ se il file non esiste, restituisce un messaggio di errore se il file non esiste, viene creato; se esiste viene effettuata la sovrascrittura a partire dall inizio con perdita dei dati precedenti se il file non esiste, viene creato; se scrittura in fondo al esiste viene effetuata la scrittura in coda file (append) ai dati già esistenti scrittura in fondo al file e lettura Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 9 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 10 Esempio Chiusura del file struct Persona { char indirizzo[20]; float stipendi[12]; ; typedef struct Persona dip; dip Dipendente; int main() { fp = fopen( registro.dat, w );... /*apertura in sola scrittura del file chiamato registro.dat di tipo testuale*/ La sintassi per la chiusura di un file è la seguente: alla fine di una sessione di accesso al file è necessario chiuderlo per memorizzare permanentemente il suo contenuto nel dispositivo di memoria di massa all esecuzione di fclose viene assegnato NULL a fp e si rilascia il descrittore di tipo FILE la funzione restituisce 0 se l operazione di chiusura avviene correttamente, altrimenti restituisce EOF (End Of File) Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 11 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 12
4 Lettura di un record dal file Questa istruzione permette di leggere una componente dal file (record) e ne trasferisce il contenuto nella memoria centrale con la seguente sintassi: fread(&buffer, dimensione, numero_elementi, fp); buffer è il buffer di I/O dimensione indica la quantità di byte da leggere complessivamente per ciascun record numero_elementi indica la quantità di record da leggere se indichiamo numero_elementi > 1 possiamo leggere piu record contemporaneamente supponendo di avere una tabella (array di strutture) Esempio struct persona { char indirizzo[20]; float stipendi[12]; ; typedef struct persona dip; dip dipendente; int main() { fp = fopen( registro.dat, r ); fread(&dipendente, sizeof(struct persona), 1, fp);... // lettura di un record dal file Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 13 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 14 Scrittura di un record su file Esempio Questa istruzione permette di scrivere una componente dal file (record) e ne trasferisce il contenuto dalla memoria centrale alla memoria di massa con la seguente sintassi: fwrite(&buffer, dimensione, numero_elementi, fp); buffer è il buffer di I/O dimensione indica la quantità di byte da leggere complessivamente per ciascun record numero_elementi indica la quantità di record da scrivere N.B.: ad ogni scrittura il puntatore al file si sposta in avanti di tanti byte quanti sono gli elementi registrati moltiplicati per la dimensione del record struct persona { char indirizzo[20]; float stipendi[12]; ; typedef struct persona dip; dip dipendente; int main() { fp = fopen( registro.dat, w ); fwrite(&dipendente, sizeof(struct persona), 1, fp); su file... // scrittura di un record Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 15 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 16
5 Posizionamento del puntatore Verifica Fine file Il file si puo assimilare a un nastro video/audio Questa istruzione permette di verificare se si è raggiunto la fine del fine EOF (End Of File) con la seguente sintassi: feof(fp); inizio del file posizione fine del file corrente La posizione corrente indica il punto da si leggerà (o si scriverà) L indicatore di posizione corrente si sposta in avanti dopo ogni lettura/scrittura Esistono le operazioni per spostare la posizione corrente in avanti o indietro senza leggere o scrivere (per esempio, fseek) Il file non ha dimensioni prefissate. La sua dimensione massima dipende dalla dimensione della memoria di massa la funzione restituisce falso (0) se non si è raggiunta la fine del file la funzione restituisce vero (!=0) se si è raggiunta la fine del file Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 17 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 18 Posiziona il puntatore Questa istruzione (usata per l accesso diretto) permette di posizionare il puntatore ad una specifica componente del file calcolando il numero di byte dei record che lo precedono con la seguente sintassi: fseek(fp, posizione, inizio); posizione è il numero di byte con il quale il puntatore viene spostato inizio (long) puo assumere tre valori : SEEK_SET 0 posizionamento a partire dall inizio del file SEEK_CUR 1 posizionamento a partire dalla posizione corrente del puntatore SEEK_END 2 posizionamento a partire dalla fine del file Ritorna il valore di posizionamento del puntatore Questa istruzione permette di determinare la posizione corrente del puntatore al file con la seguente sintassi: long pos; pos = ftell(fp); N.B.: nel caso di apertura del file in r+, w+ o a+, nel passaggio da una tipologia di accesso (readwrite o writeread) bisogna utilizzare fseek(fp, 0, SEEK_CUR) per fissare il puntatore al record Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 19 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 20
6 Gestione degli errori Esempio Accesso Sequenziale (1) La funzione ferror(fp) restituisce: 0 se non è stato commesso alcun errore nella precedente operazione di lettura/scrittura un valore!=0 in caso contrario struct persona { ; typedef struct persona dip; dip dipendente; void registra(void); void visualizza(void); Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 21 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 22 Esempio Accesso Sequenziale (2) int main( ) { // registrazione fp = fopen( registro.dat, wb ); registra( ); // visualizzazione fp = fopen( registro.dat, rb ); if( fp!= NULL) { visualizza( ); else cout<< Errore: l archivio non esiste <<endl; return 0; Esempio Accesso Sequenziale (3) void registra() { int risposta; do { print( Inserimento di un dipendente \n ); printf( Matricola: \n ); scanf( %d,&dipendente.matricola); printf( Cognome: \n ); scanf( %s,dipendente.cognome); printf( Nome:\n ); scanf(( %s,dipendente.nome); printf( Livello: ); scanf( %d,&dipendente.livello); fwrite(&dipendente, sizeof(dip), 1, fp); printf( Elenco finito? (0 = no, 1 = si): \n ); scanf( %d,&risposta); while(!risposta); return; Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 23 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 24
7 Esempio Accesso Sequenziale (4) void visualizza() { printf( Elenco dipendenti \n ); fread(&dipendente, sizeof(dip), 1, fp); while(!feof(fp)) { printf( Matricola:\n ); printf( %d, dipendente.matricola); printf( Cognome: \n ); printf( %s, dipendente.cognome); printf( Nome: \n ); printf( %s, dipendente.nome); printf( Livello:\n ); printf( %d, dipendente.livello); fread(&dipendente, sizeof(dip), 1, fp); return; Esempio Accesso Diretto (1) struct persona { ; typedef struct persona dip; dip dipendente; void registra(void); Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 25 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 26 Esempio Accesso Diretto (2) Esempio Accesso Diretto (3) int main( ) { // registrazione fp = fopen( registro.dat, a+b ); if( fp!= NULL) { registra( ); else printf( Errore: l archivio non esiste \n ); return 0; void registra() { int i; long posizione; printf( Inserimento di un dipendente \n ); printf( inserire indice record inserire il dipendente \n ); scanf( %d, &i); while(i > 0) { posizione = (i 1) * sizeof(dip); fseek(fp, posizione, 0); if( fread(&dipendente, sizeof(dip), 1, fp) && dipendente.cognome[0]!= \0 ) { printf( Attenzione codice gia presente\n ); printf( Matricola: \n ); scanf( %d, &dipendente.matricola); printf( Cognome: \n ); printf( %s, dipendente.cognome); printf( Impossibile registrazione \n ); Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 27 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 28
8 Esempio Accesso Diretto (4) File di record a lunghezza variabile else { printf( Matricola: \n ); scanf( %d, &dipendente.matricola); printf( Cognome: \n ); scanf( %s,dipendente.cognome); printf( Nome:\n ); scanf(%s,dipendente.nome); printf( Livello: \n ); scanf( %d, &dipendente.livello); fseek(fp, posizione, 0); fwrite(&dipendente, sizeof(dip), 1, fp); printf( inserire indice record inserire il dipendente (0 termina) \n ); scanf( %d, &i); return; Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 29 I file sorgenti sono un esempio di file con record a lunghezza variabile: ogni riga termina con un EOL (End Of Line) in genere sono file di testo l accesso puo essere solo di tipo sequenziale Tipiche istruzioni per lettura/scrittura file di testo a lunghezza variabile: fprintf(fp, %s \n,nome); fscanf(fp, %s, nome); // scrittura su file // lettura da file N.B. : si ricorda che nel caso in cui al posto di fp si usa stdprn, la fprintf gestisce il flusso verso la stampante Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 30 Esempio di file di record a lunghezza variabile File *fp; void chiedi( ); int main( ) { fp = fopen( rubrica.txt, w ); chiedi ( ); while ( nome[0]!= * ) { fprintf (fp, %s \n, nome); chiedi ( ); return 0; void chiedi ( ) { printf( inserisci il nome di un collega ( * per finire) \n ); scanf( %s,nome); return; File di record a lunghezza variabile per gestire i singoli caratteri si usano le istruzioni: c = fgetc(fp1); // equivalente alla fscanf di un carattere fputc(c, fp1); // equivalente alla fprintf di un carattere per gestire le righe intese come stringhe si usano le istruzioni: fgets(buf, n, fp1); // legge fa file una riga di n caratteri e la mette in buf fputs(buf, fp1); // scrive una riga su file Esempio : copia di due file binari byte per byte Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 31 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 32
9 Esempio di file di record a lunghezza variabile Riepilogo della lezione int main( ) { File *fp1, *fp2; int a; fp1 = fopen( file1.doc, rb ); fp2 = fopen( file2.doc, wb ); a = fgectc(fp1); while (! feof(fp1)) { fputc( c, fp2); a = fgetc(fp1); fclose(fp1); fclose(fp2) return 0; Linguaggio C - Gestione dei file File di testo e binari Operazioni su file con accesso sequenziale Operazioni su file con accesso diretto Esempio di file con accesso sequenziale Esempio di file con accesso diretto File di record a lunghezza variabile Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 33 Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 34 Fine della lezione Domande? Fondamenti di Informatica A.A a cura di Pascoschi Giovanni 35
Gestione dei File in C
Gestione dei File in C Maurizio Palesi DIIT Università di Catania Viale Andrea Doria 6, 95125 Catania mpalesi@diit.unict.it http://www.diit.unict.it/users/mpalesi Sommario In questo documento saranno introdotte
DettagliInput/output da file I/O ANSI e I/O UNIX FLUSSI E FILE FLUSSI FLUSSI di TESTO FLUSSI BINARI FILE
Input/output da file Il linguaggio C non contiene istruzioni di I/O, in quanto tali operazioni vengono eseguite tramite funzioni di libreria standard. Questo approccio rende estremamente flessibile e potente
DettagliGestione dei File. dischi nastri cd
Gestione dei File Per mantenere disponibili i dati tra le diverse esecuzioni di un programma, questi si devono archiviare in file su memoria di massa (dati persistenti): dischi nastri cd Un file è un astrazione
DettagliGestione di files Motivazioni
Gestione di files Motivazioni Un programma in esecuzione legge (sequenzialmente) una sequenza di caratteri prodotti "al volo" dall'utente (tramite tastiera) il programma in esecuzione scrive (sequenzialmente)
DettagliIL CONCETTO DI FILE. È illecito operare oltre la fine del file.
IL CONCETTO DI FILE Un file è una astrazione fornita dal sistema operativo, il cui scopo è consentire la memorizzazione di informazioni su memoria di massa. Concettualmente, un file è una sequenza di registrazioni
DettagliLinguaggio C: i file
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica A - GES Prof. Plebani A.A. 2006/2007 Linguaggio C: i file La presente dispensa e da utilizzarsi ai soli fini didattici previa
DettagliEsercizi. I File ed il C
Politecnico di Milano Esercizi File di testo,, file binari I File ed il C Insieme omogeneo di dati, memorizzato su disco e caratterizzato da un nome La lunghezza di un file non è fissata a priori Astrazione
DettagliSono file di caratteri, organizzati in linee. Ogni linea e` terminata da una marca di fine linea (newline, cara ttere '\n').
I File Il file e` l'unita` logica di memorizzazione dei dati su memoria di massa. Consente una memorizzazione persistente dei dati, non limitata dalle dimensioni della memoria centrale. Generalmente un
DettagliGestione dei file. File di testo e binari
Gestione dei file Un file e definito come un oggetto, presente nel file system, costituito da una sequenza continua di bytes Un file, per poter essere utilizzato, deve essere aperto Successivamente e possibile
DettagliScrittura formattata - printf
Esercizi su Input/Output con formato FormattedIO 1 Scrittura formattata - printf Funzione printf int printf ( , ) La funzione restituisce un valore intero uguale ai caratteri
DettagliGestione dei file. Stefano Ferrari. Università degli Studi di Milano Programmazione. anno accademico
Gestione dei file Stefano Ferrari Università degli Studi di Milano stefano.ferrari@unimi.it Programmazione anno accademico 2016 2017 Gli stream Si dice stream qualsiasi sorgente di dati in ingresso e qualsiasi
DettagliARCHIVI E FILE. Prof. Ciaschetti
ISTITUTO DI ISTRUZIONE SUPERIORE ANGIOJ ARCHIVI E FILE Prof. Ciaschetti Un archivio è un insieme di registrazioni (record) memorizzate in modo persistente, cioè resta memorizzato permanentemente, anche
DettagliGestione dei file. Linguaggio ANSI C Input/Output - 13
Gestione dei file Necessità di persistenza dei file archiviare i file su memoria di massa. Un file è una astrazione fornita dal sistema operativo, il cui scopo è consentire la memorizzazione di informazioni
DettagliIntroduzione. L elaborazione dei files in C. Elaborazione dei files (1) Elaborazione dei files (2) D.D. cap. 11+ pp K.P. pp.
Introduzione L elaborazione dei files in C D.D. cap. 11+ pp. 569-572 K.P. pp. 581-583 La memorizzazione dei dati nelle variabili e nei vettori è temporanea: tutti quei dati andranno persi quando il programma
DettagliIntroduzione al C. Unità 9 File. D. Bloisi, S. Peluso, A. Pennisi, S. Salza
Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Introduzione al C Unità 9 File D. Bloisi, S. Peluso, A. Pennisi, S. Salza Sommario Input/Output Stream
DettagliLinguaggio C Gestione File
Gestione File: Il file è l'unità logica di memorizzazione dei dati su memoria di massa, che consente una memorizzazione persistente dei dati non limitata dalle dimensioni della memoria centrale. Nel linguaggio
DettagliI File. Il file e` l'unita` logica di memorizzazione dei dati su memoria di massa.
I File Il file e` l'unita` logica di memorizzazione dei dati su memoria di massa. Consente una memorizzazione persistente dei dati, non limitata dalle dimensioni della memoria centrale. Generalmente un
DettagliUnità Didattica 5 Linguaggio C. Stringhe. Accesso a file ASCII. Strutture.
Unità Didattica 5 Linguaggio C Stringhe. Accesso a file ASCII. Strutture. 1 Stringhe Una stringa è una sequenza di caratteri (es: ciao, sd!n29dnqa ); In C non esiste una variabile di tipo stringa; Una
DettagliI file possono essere manipolati (aperti, letti, scritti ) all interno di programmi C. dischi nastri cd
Per poter mantenere disponibili i dati tra le diverse esecuzioni di un programma (persistenza dei dati) è necessario poterli archiviare su memoria di massa. dischi nastri cd GESTIONE DEI FILE I file possono
DettagliFondamenti di Informatica T. Linguaggio C: File
Linguaggio C: File I File Il file e` l'unita` logica di memorizzazione dei dati su memoria di massa, che consente una memorizzazione persistente dei dati, non limitata dalle dimensioni della memoria centrale.
DettagliBreve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN
Breve Manuale di Riferimento sulla Sintassi Linguaggi e versione aggiornata al 05/02/2004 Sommario Elementi di Base... 2 Dati, Tipi e Dichiarazioni... 2 Tipi di Dato di Base... 2 Tipi di Dato Strutturati...
DettagliGestione dei File C. Generalità
Gestione dei File C 1 Generalità Il linguaggio C non contiene alcuna istruzione di Input/Output. Tali operazioni vengono svolte mediante chiamate a funzioni definite nella libreria standard contenute nel
DettagliI file Laboratorio di Linguaggi di Programmazione a.a. 2001/2002
I file Laboratorio di Linguaggi di Programmazione a.a. 2001/2002 dott.ssa Francesca A. Lisi lisi@di.uniba.it Sommario Generalità sui file in C I file ad accesso sequenziale I file di testo Riferimenti
DettagliELEMENTI DI INFORMATICA L-B. Ing. Claudia Chiusoli
ELEMENTI DI INFORMATICA L-B Ing. Claudia Chiusoli Materiale Lucidi delle lezioni Date degli appelli Testi di esami precedenti Informazioni e contatti http://www.lia.deis.unibo.it/courses/ Programma del
DettagliSuggerimenti, note utili ed errori comuni. Fondamenti di informatica T
Suggerimenti, note utili ed errori comuni Fondamenti di informatica T printf, scanf e stringhe di formato La lettura e scrittura di variabili in formato testo sono realizzate tramite printf e scanf sfruttando
DettagliFILE: tipo operazione Istruì. prototipo esempi lettura di un carattere fgetc Int fgetc(file *flusso) Vedi sotto
FILE: tipo operazione Istruì. prototipo esempi lettura di un carattere fgetc Int fgetc(file *flusso) Vedi sotto alla volta Scrittura di un fputc Int fputc(int ch, FILE *flusso); carattere alla volta Lettura
DettagliCapitolo 11 Elaborazione di file
1 Capitolo 11 Elaborazione di file 11.1 Introduzione 2 I file Possono essere creati, modificati, ed elaborati da programmi scritti in C Sono utilizzati per la memorizzazione permanente dei dati La memorizzazione
DettagliSe vogliamo cambiarlo: i dati vengono sovrascritti. 300 White Jones (vecchio valore) 300 Worthington 0.00
File position pointer File position pointer Indica la posizione da cui leggere/scrivere i prossimi byte Non un puntatore, ma un valore intero (specifica la posizione dall inizio file in termini di numero
DettagliEsercizio 2 (punti 7) Dato il seguente programma C: #include <stdio.h> int swap(int * nome, int length);
Fondamenti di Informatica L-A (A.A. 004/005) - Ingegneria Informatica Prof.ssa Mello & Prof. Bellavista I Prova Intermedia del 11/11/004 - durata h - COMPITO B Esercizio 1 (punti 1) Una associazione di
DettagliEsercizi di programmazione in linguaggio C English Dictionary
Esercizi di programmazione in linguaggio C English Dictionary Il file di testo wordnet.txt contiene un certo numero di parole (word) e il corrispondente significato (meaning) secondo il seguente formato:
Dettaglipuntatori Lab. Calc. AA 2007/08 1
puntatori Lab. Calc. AA 2007/08 1 parametri delle funzioni (dalla lezione scorsa) gli argomenti in C vengono passati by value dalla funzione chiamante alla funzione chiamata la lista degli argomenti viene
DettagliFondamenti di Informatica
Fondamenti di Informatica Gestione dei File in MATLAB Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 Gestione dei file in MATLAB OUTLINE Caratteristiche
DettagliIntroduzione al C. Stream e disk file
Introduzione al C Stream e disk file Stream Un canale è una sequenza di byte di dati Sorgente o destinazione di dati che possono essere associati ad un disco o ad altre periferiche Due tipi di stream:
DettagliDIPARTIMENTO DI ELETTRONICA, INFORMAZIONE E BIOINGEGNERIA. INFORMATICA B Ingegneria Elettrica. I file in Matlab
INFORMATICA B Ingegneria Elettrica I file in Matlab I file I file sono contenitori di informazione: sequenze di byte associate ad un nome Sono memorizzati su memoria di massa (non- volatile) Possono continuare
DettagliElementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I
Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave
DettagliDOTT. ING. LEONARDO RIGUTINI DIPARTIMENTO INGEGNERIA DELL INFORMAZIONE UNIVERSITÀ DI SIENA VIA ROMA 56 53100 SIENA UFF. 0577234850-7102 RIGUTINI@DII
Gestione dei files DOTT. ING. LEONARDO RIGUTINI DIPARTIMENTO INGEGNERIA DELL INFORMAZIONE UNIVERSITÀ DI SIENA VIA ROMA 56 53100 SIENA UFF. 0577234850-7102 RIGUTINI@DII.UNISI.IT HTTP://WWW.DII.UNISI.IT/~RIGUTINI/
DettagliMATLAB: FILES. Informatica B/C - A.A. 2013/2014
MATLAB: FILES Informatica B/C - A.A. 2013/2014 I FILE Contenitori di informazione: sequenze di byte associate ad un nome Sono memorizzati su memoria di massa (non-volatile) Possono continuare ad esistere
DettagliLe funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni
Funzioni Le funzioni Con il termine funzione si intende, in generale, un operatore che, applicato a un insieme di operandi, consente di calcolare un risultato, come avviene anche per una funzione matematica
DettagliFile binari, Operazioni sui File binari, Allocazione dinamica della memoria
File binari, Operazioni sui File binari, Allocazione dinamica della memoria Vitoantonio Bevilacqua bevilacqua@poliba.it Parole chiave: File binari, Funzioni principali file binari, Funzione malloc, Allocazione
DettagliArray. Maurizio Palesi Salvatore Serrano. In C si possono definire tipi strutturati Vi sono due costruttori fondamentali
MASTER Information Technology Excellence Road (I.T.E.R.) Array Maurizio Palesi Salvatore Serrano Master ITER Informatica di Base Maurizio Palesi, Salvatore Serrano 1 Tipi di dato stutturati In C si possono
DettagliFILE BINARI FILE BINARI
FILE BINARI Un file binario è una pura sequenza di byte, senza alcuna strutturazione particolare È un'astrazione di memorizzazione assolutamente generale, usabile per memorizzare su file informazioni di
DettagliLP1 Lezione 13: i File in C. Maurizio Tucci
LP1 Lezione 13: i File in C Maurizio Tucci mtucci@unisa.it 1 Il File: Dichiarazione Memorizzare dati in maniera non volatile In C (libreria ) è definito un tipo FILE che astrae il concetto di sequenza
DettagliOTTAVA ESPERIENZA DI LABORATORIO. L elaborazione dei files in C
CORSO DI LABORATORIO DI INFORMATICA CORSO DI LAUREA IN SDM ANNO ACCADEMICO 2011-2012 Docente: R. Sparvoli Esercitazioni: R. Sparvoli, F. Palma OTTAVA ESPERIENZA DI LABORATORIO L elaborazione dei files
DettagliInput/output in C e in C++
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Input/output in C e in C++ 2001 Pier Luca Montessoro - Davide Pierattoni
DettagliFondamenti di Informatica 2
Fondamenti di Informatica 2 della prova scritta del 28 Febbraio 2006 Esercizio 1 (4 punti) Date le seguenti variabili int A[] = 2,3,7,-2,5,8,-4; int N = 7; int min = 3; int i; Scrivere la porzione di codice
DettagliLab 10 Gestione file di testo
Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 10 Gestione file di testo Lab15 1 Esercizio 1 n Realizzare un programma che, aperto un file di testo di nome
DettagliI file. un file è una sorgente/destinazione di dati per diversi attori
I file Il file è un astrazione molto ampia nella descrizione di un sistema informatico: Il concetto di file è uno snodo fondamentale di flussi di informazione anche tra applicazioni diverse un file è una
DettagliSOMMARIO SU LETTURA E SCRITTURA (I/O) DEGLI STANDARD FILES
SOMMARIO SU LETTURA E SCRITTURA (I/O) DEGLI STANDARD FILES Con conversione di formato: int scanf (const char *format,... ) /* ritorna il numero di argomenti assegnati con successo altrimenti EOF se fine
DettagliLaboratorio di Informatica
Liste semplici (semplicemente linkate) Una lista semplice e costituita da nodi Laboratorio di Informatica 7. Strutture complesse di dati in C++ Ogni nodo e una struttura che contiene : Dati Un riferimento
DettagliMatlab: Gestione avanzata dei file
Matlab: Gestione avanzata dei file Informatica B File 2 Contenitori di informazione permanenti Sono memorizzati su memoria di massa Possono continuare ad esistere indipendentemente dalla vita del programma
DettagliL accesso ai dispositivi esterni (tastiera, monitor, file,...) viene gestito mediante canali di comunicazione.
I file L accesso ai dispositivi esterni (tastiera, monitor, file,...) viene gestito mediante canali di comunicazione. I canali, sono delle strutture dati che contengono informazioni sul dispositivo fisico,
DettagliPROVA SCRITTA DEL CORSO DI CORSO DI LAUREA IN INGEGNERIA BIOMEDICA ED ELETTRICA 17/2/2009
PROVA SCRITTA DEL CORSO DI CORSO DI LAUREA IN INGEGNERIA BIOMEDICA ED ELETTRICA 7/2/2009 MOTIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSTE A CIASCUNO DEGLI ESERCIZI SVOLTI ESERCIZIO (5 punti) Esprimere
DettagliStruttura dati FILE. Concetto di FILE
Struttura dati FILE Concetto di FILE Per poter mantenere disponibili dei dati tra diverse esecuzioni di un programma (PERSISTENZA dei dati), è necessario poterli archiviare su memoria di massa. Un file
Dettaglicaratteri, immagini, suoni, ecc.
Il linguaggio C Input e output I flussi di I/O L uso di buffer Apertura e chiusura di file Lettura e scrittura di dati La selezione di un metodo di I/O I/O non bufferizzato L accesso diretto a file Input
Dettagli1 (6) 2 (7) 3 (7) 4 (7) 5 (6)
CORSO DI LAUREA IN INGEGNERIA ELETTRICA, CHIMICA e MATERIALI Informatica B anno accademico 010-011 Prof. Danilo ARDAGNA Seconda Prova in Itinere 7.06.011 Durata 1h 30 Valutazioni 1 (6) (7) 3 (7) 4 (7)
DettagliLezione 9: Puntatori a funzioni. Tipi enumerativi e orientati ai bit
Lezione 9: Puntatori a funzioni. Tipi enumerativi e orientati ai bit Vittorio Scarano Laboratorio di Informatica I Corso di Laurea in Informatica Università degli Studi di Salerno Struttura della lezione
DettagliEsercizio 1: Puntatori impiegati che sono manager
Esercitazione Fondamenti di Informatica B Corso di Laurea in Ingegneria Meccanica 10 Esercitazione: 25 gennaio 2006 Esercizi di riepilogo Problema: Esercizio 1: Puntatori impiegati che sono manager Si
DettagliStruttura a record. File ad accesso diretto. Modalità di apertura. Modalità di apertura
Struttura a record 2 File ad accesso diretto Il file è organizzato in record aventi tutti la stessa struttura e quindi dimensione record 0 record 1 record 2 Ver. 2.4 2010 - Claudio Fornaro - Corso di programmazione
DettagliLettura da tastiera e scrittura su monitor
Lettura da tastiera e scrittura su monitor Per poter leggere UN SINGOLO CARATTERE dalla tastiera e visualizzare UN SINGOLO CARATTERE sul monitor si possono utilizzare le funzioni: int getchar (void) (per
DettagliIntroduzione al Linguaggio C
Introduzione al Linguaggio C File I/O Daniele Pighin April 2009 Daniele Pighin Introduzione al Linguaggio C 1/15 Outline File e dati Accesso ai file File I/O Daniele Pighin Introduzione al Linguaggio C
DettagliFILE BINARI. I file di testo non sono indispensabili: sono semplicemente comodi!
FILE BINARI Un file binario è una pura sequenza di byte, senza alcuna strutturazione particolare. È un'astrazione di memorizzazione assolutamente generale, usabile per memorizzare su file informazioni
DettagliCorso di Laurea in Ingegneria Meccanica A-K. Fondamenti di Informatica A. A Gestione dei File. A.Pinto
Corso di Laurea in Ingegneria Meccanica A-K Fondamenti di Informatica A. A. 2011-2012 1 Memorizzazione dei dati su dispositivi di memoria esterna Dispositivi di memorizzazione secondaria sono: dischi,
DettagliEsercizio 1 Liste: calcolo perimetro di un poligono
Esercitazione Fondamenti di Informatica B Corso di Laurea in Ingegneria Meccanica 12 Esercitazione: 28 gennaio 2005 Esercizi su liste, ricorsione, file. Scaletta Esercizio 1 Liste: calcolo perimetro di
DettagliLinguaggio C. Esercizio 1
Linguaggio C Esercizi su puntatori e liste Walter Didimo (e-mail:didimo@dia.uniroma3.it) supplemento al Corso di Calcolatori Elettronici (Riccardo Torlone) 1 Esercizio 1 Siano p e q due puntatori a variabili
DettagliLinguaggio C - sezione dichiarativa: costanti e variabili
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - sezione dichiarativa: costanti e variabili La presente
DettagliEsercizio 1: funzione con valore di ritorno di tipo puntatore
Esercitazione Fondamenti di Informatica B Corso di Laurea in Ingegneria Meccanica 7 Esercitazione: 14 dicembre 2005 Esercizi su ricorsione, manipolazione stringhe, strutture dinamiche Problema: Esercizio
DettagliFunzioni, Stack e Visibilità delle Variabili in C
Funzioni, Stack e Visibilità delle Variabili in C Programmazione I e Laboratorio Corso di Laurea in Informatica A.A. 2016/2017 Calendario delle lezioni Lez. 1 Lez. 2 Lez. 3 Lez. 4 Lez. 5 Lez. 6 Lez. 7
DettagliFILE BINARI FILE BINARI FILE BINARI. OUTPUT BINARIO: fwrite()
FILE BINARI Un file binario è una pura sequenza di byte, senza alcuna strutturazione particolare È un'astrazione di memorizzazione assolutamente generale, usabile per memorizzare su file informazioni di
DettagliARCHIVI E FILE ARCHIVI FILE. Istituto Angioy Informatica. Prof. Ciaschetti
Istituto Angioy Informatica ARCHIVI E FILE Prof. Ciaschetti ARCHIVI Un archivio è un insieme di registrazioni (record) memorizzate in modo persistente, su un qualunque tipo di supporto. La caratteristica
DettagliTipi di dati strutturati e Linguaggio C. Record o strutture Il costruttore struct in C
Tipi di dati strutturati e Linguaggio C Record o strutture Il costruttore struct in C Dati strutturati Record Un record o struttura è una struttura dati ottenuta aggregando elementi di tipo diverso che
DettagliComplementi. - Ridefinizione di tipo - - Costrutto switch - - Programmazione su più file - - Parametri della funzione main - Funzione system -
Complementi - Ridefinizione di tipo - - Costrutto switch - - Programmazione su più file - - Parametri della funzione main - Funzione system - Università degli Studi di Brescia Prof. Massimiliano Giacomin
DettagliIntroduzione ai puntatori in C Definizione
Introduzione ai puntatori in C Definizione Un puntatore è una variabile che contiene l indirizzo di un altra variabile Tramite i puntatori si può quindi accedere a un oggetto indirettamente (si usa il
DettagliFiles in C++ Fondamenti di Informatica. R. Basili. a.a. 2006-2007
Files in C++ Fondamenti di Informatica R. Basili a.a. 2006-2007 Sintesi Motivazioni Definizione di file in C++ Un esempio Uso dei file Esempi Esercizi Motivazioni il programma in esecuzione legge (sequenzialmente)
DettagliFunzioni matlab per la gestione dei file. Informatica B Prof. Morzenti
Funzioni matlab per la gestione dei file Informatica B Prof. Morzenti File Contenitori di informazione permanenti Sono memorizzati su memoria di massa Possono continuare a esistere indipendentemente dalla
DettagliCorso sul linguaggio Java
Corso sul linguaggio Java Modulo JAVA6 A1 I file testo 1 Prerequisiti Programmazione base in Java Utilizzo di classi e oggetti Modello produttore consumatore Operazioni logiche su struttura file 2 1 Introduzione
DettagliCorso di Fondamenti di Informatica Tipi strutturati: Strutture typedef Anno Accademico 2008/2009 Francesco Tortorella
Corso di Fondamenti di Informatica Tipi strutturati: Strutture typedef Anno Accademico Francesco Tortorella Le strutture Gli array permettono la sola aggregazione di variabili dello stesso tipo. Quindi
DettagliLaboratorio di programmazione
Laboratorio di programmazione Lezione II Tatiana Zolo zolo@cs.unipr.it 1 IL PROGRAMMA C++ Istruzioni (espressioni terminate da ; ) istruzioni di dichiarazione (es. int x = 0;); istruzioni di assegnamento
DettagliESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C
Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2
DettagliLaboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007
Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Dott.Davide Di Ruscio Dipartimento di Informatica Università degli Studi di L Aquila Lezione del 13/03/07 Nota Questi lucidi sono tratti
DettagliEsercitazione 12. Esercizi di Ricapitolazione
Esercitazione 12 Esercizi di Ricapitolazione Esercizio Scrivere un programma che, dato un numero intero positivo, stampa la sua rappresentazione binaria. ALGORITMO Scriviamo una procedura stampa_bin che,
Dettagligiapresente( ) leggi( ) char * strstr(char * cs, char * ct) NULL
Materiale di ausilio utilizzabile durante l appello: tutto il materiale è a disposizione, inclusi libri, lucidi, appunti, esercizi svolti e siti Web ad accesso consentito in Lab06. L utilizzo di meorie
DettagliCorso di Fondamenti di Informatica Linguaggi di Programmazione
Corso di Fondamenti di Informatica Linguaggi di Programmazione Anno Accademico Francesco Tortorella Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di
DettagliPolitecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione. e mail: sito: users.iol.
Politecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione prof. Lorenzo Porcelli e mail: genna18@iol.it sito: users.iol.it/genna18 Risoluzione di un problema Dato
DettagliFILE BINARI FILE BINARI
FILE BINARI Un file binario è una pura sequenza di byte, senza alcuna strutturazione particolare È un'astrazione di memorizzazione assolutamente generale, usabile per memorizzare su file informazioni di
DettagliLab 11 Gestione file di testo"
Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 11 Gestione file di testo" Lab15 1 Esercizio 1 n Realizzare un programma che, aperto un file di testo di nome
DettagliAlgebra di Boole: Concetti di base. E un algebra basata su tre operazioni logiche
Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono
DettagliConcetti chiave. Struct. Variabili strutturate: il tipo struct Elementi di una struttura typedef e struct Array di strutture
Concetti chiave Struct Variabili strutturate: il tipo struct Elementi di una struttura typedef e struct Array di strutture Struct Per aggregare elementi di tipo diverso si utilizza una struttura. struct
DettagliCaratteri e stringhe
Caratteri e stringhe Caratteri Dato che un computer può memorizzare esclusivamente sequenze di bit, per memorizzare un carattere (e quindi testi) è necessario stabilire una convenzione che associa a un
DettagliEsercizio n.1 FONDAMENTI DI INFORMATICA 1. Esercizio n.2. Soluzione. LINGUAGGIO C Funzioni e gestione file: esercitazione
Università degli Studi di Cagliari Corso di Laurea in Ingegneria Biomedica (Industriale), Chimica, Meccanica, Elettrica FONDAMENTI DI INFORMATICA 1 http://www.diee.unica.it/~marcialis/fi1 A.A. 2010/2011
DettagliUniversità degli Studi di Cassino Corso di Fondamenti di Informatica Tipi strutturati: Stringhe. Anno Accademico 2010/2011 Francesco Tortorella
Corso di Informatica Tipi strutturati: Stringhe Anno Accademico 2010/2011 Francesco Tortorella Stringhe di caratteri La stringa è il tipo strutturato con cui vengono rappresentati gruppi di caratteri quali
DettagliPrimi passi col linguaggio C
Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Come introdurre un linguaggio di programmazione? Obiettivi: Introduciamo una macchina astratta
DettagliDati aggregati. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica - in breve: Definizione di tipi Array Stringhe Strutture
DettagliLibrerie C. Corso di Linguaggi e Traduttori 1 AA
Corso di Linguaggi e Traduttori 1 AA 2004-05 1 Corso di Linguaggi e Traduttori 1 AA 2004-05 stdio.h 2 Funzioni comunidi I/O? Le piu' comuni funzioni che permettono I/O sono getchar() e putchar():? int
DettagliGli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori
Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine
DettagliLa gestione della memoria dinamica Heap
Laboratorio di Algoritmi e Strutture Dati La gestione della memoria dinamica Heap Prof. Luigi Lamberti 2005 Cenni sui Processi Un Programma è un insieme di Istruzioni memorizzato in un file con le costanti
DettagliLinguaggio C. Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore.
Linguaggio C Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore. 1 Funzioni Generalizzazione del concetto di funzione algebrica: legge che associa a valori delle variabili
DettagliPolitecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prima prova in itinere COGNOME E NOME. 13 novembre 2006 RIGA COLONNA MATRICOLA
Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prima prova in itinere COGNOME E NOME 13 novembre 2006 RIGA COLONNA MATRICOLA Il presente plico pinzato, composto di sei fogli, deve
Dettagli4 Le liste collegate 4.0. Le liste collegate. 4 Le liste collegate Rappresentazione di liste 4.1 Rappresentazione di liste
4 Le liste collegate 4.0 Le liste collegate c Diego Calvanese Fondamenti di Informatica Corso di Laurea in Ingegneria Elettronica A.A. 2001/2002 4.0 0 4 Le liste collegate Rappresentazione di liste 4.1
DettagliTipi di dato primitivi
Tipi di dato primitivi (oltre int) Tipi di dato primitivi int (già trattati) Valori logici (ricordati) Valori reali Valori carattere Informatica - A.A. 2009/2010 - Tipi di dato 2 1 Valori logici (il caso
Dettagli