I file. un file è una sorgente/destinazione di dati per diversi attori

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "I file. un file è una sorgente/destinazione di dati per diversi attori"

Transcript

1 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 sorgente/destinazione di dati per diversi attori tipicamente uso un file per prima memorizzare delle informazioni, e poi per recuperarle in un secondo tempo Un file è visto da diversi elementi di un calcolatore: i programmi il file system (sistema operativo) Quale visione adottare? Quella dei linguaggi di programmazione (mettendo il concetto di file nel linguaggio stesso), o quella del sistema operativo (lasciando cioè la gestione dei file ad apposite librerie)? la tendenza moderna è di non definire la struttura dei file nei linguaggi di programmazione, lasciandola ad apposite librerie queste librerie sono system dependent, variano cioè da computer a computer I file sono strutture sostanzialmente sequenziali, anche se, quando è possibile, permettono un accesso diretto 1

2 File e flussi di comunicazione In C, le periferiche di ingresso e uscita (terminali, stampanti) sono viste come file I/O su file è del tutto analogo all'i/o su periferiche quindi anche analogo a I/O su standard input e output Per utilizzare un file occorre aprire un flusso di comunicazione da/verso il file: si dichiara una variabile di tipo puntatore a tipo FILE (FILE è un tipo definito in stdio.h) si apre il flusso tramite la funzione di libreria fopen fopen apre un file esistente o ne crea uno nuovo e restituisce un puntatore a FILE questo puntatore serve successivamente per riferirsi al file al termine delle operazioni di lettura/scrittura, il flusso di comunicazione deve essere chiuso tramite la funzione fclose questo impedisce ogni successivo riferimento al file nel programma Ci sono due tipi di flussi di comunicazione: binario o di tipo testo un flusso binario è una sequenza di byte quello che vedo arrivare dal (o vado a mettere nel) file sono sequenze di byte, che devo poi dire io come interpretare flusso di testo è sequenza di caratteri quello che vedo arrivare sono caratteri, sui quali posso eseguire le usuali operazioni sui caratteri la sequenza è suddivisa in linee terminate da carattere newline ('\n') la sequenza può subire qualche elaborazione per esempio, un newline mandato alla stampante viene tradotto in ritorno a capo + salto a nuova linea 2

3 Il tipo FILE e la funzione fopen FILE è un tipo strutturato che contiene, tra le altre cose: la modalità di utilizzo del file può essere lettura, scrittura o lettura e scrittura la posizione corrente sul file mi dice dove sono arrivato nel file, determina il prossimo byte/carattere da leggere o scrivere un indicatore di errore registra il verificarsi di errori di lettura/scrittura indicatore di end-of-file (eof) mi dice quando sono arrivato in fondo al file Alle informazioni contenute in una struttura FILE non accedo direttamente, ma tramite delle funzioni standard Esempio di dichiarazione variabile puntatore a file FILE*fp; Le variabili di tipo FILE non sono gestite dal programma ma dal sistema operativo Il sistema operativo gestisce una struttura per censire i file usati dai programmi in esecuzione Una cosa simile a questa (non è proprio questa la sua dichiarazione, è solo per dare un'idea...): FILE TabellaFileAperti[MaxNumFileGestibili]; Quando un programma chiama la fopen, vengono forniti i dati identificativi del file e della sua apertura: il nome del file una stringa di caratteri secondo le convenzioni del file system la modalità di utilizzo del file lettura, scrittura, lettura e scrittura La funzione fopen è un frammento di sistema operativo memorizza nella TabellaFileAperti (o chi per lei) un nuovo descrittore di file con campi per il nome del file, le modalità di utilizzo, la posizione del prossimo byte da leggere o scrivere etc... restituisce l'indirizzo della struttura di tipo FILE che descrive il file in questione 3

4 Flussi standard Variabili puntatore stdin stdout stderr f1 f2 f3 Tabella dei file aperti nomefile: modouso: poscorr:... nomefile: modouso: poscorr:... nomefile: modouso: poscorr:... nomefile: FileTre modouso: poscorr:... nomefile: FileUno modouso: poscorr:... nomefile: FileDue modouso: poscorr:... File StandardInput StandardOutput StandardError FileUno FileDue FileTre Le dichiarazioni di tipi, costanti, funzioni si trovano nella libreria standard stdio.h va inclusa con la direttiva #include <stdio.h> Esistono tre flussi standard automaticamente aperti all esecuzione di ogni programma: stdin (normalmente associato alla tastiera) stdout (normalmente associato al video) stderr (normalmente associato al video) il valore di queste variabili viene (automaticamente) assegnato all inizio dell esecuzione di ogni programma printf e scanf fanno riferimento (implicito) ai flussi (file) stdout e stdin 4

5 Operazioni sui file Apertura di un file: FILE *fopen(char filename[], char mode[]); apre il file di nome filename o lo crea se il file non esiste modalità di apertura: r : lettura in modalità testo, posizionamento all'inizio del file w : scrittura in modalità testo, posizionamento all'inizio del file a : scrittura in modalità testo, posizionamento a fine file (append) rb, wb e ab : come sopra ma modalità binaria a+ append e lettura, r+ lettura e scrittura, w+ scrittura e lettura rb+ lettura e scrittura binaria... etc. Chiusura di un file: int fclose(file *fp); chiude il file puntato da fp il descrittore di tipo FILE viene rilasciato restituisce 0 se l'operazione va a buon fine, altrimenti EOF (costante definita in stdio.h). Eliminazione di un file: int remove(char filename[]); cancella il file di nome filename restituisce 0 se l'operazione va a buon fine, un valore diverso da altrimenti Ridenominazione di un file: int rename(char oldname[], char newname[]); cambia nome al file restituisce 0 se l'operazione va a buon fine, un valore diverso da altrimenti Quando si tenta un'operazione anomala (per esempio cancellare o cambiare nome a un file aperto) il comportamento non è definito (dipende dall'implementazione) 5

6 Operazioni di gestione degli errori Nel descrittore di un file aperto ci sono due campi per registrare: una generica situazione di errore (campo error) il raggiungimento della fine del file, cioè il tentativo di leggere dati dopo l'ultimo (campo eof) Ci sono due funzioni apposite feof ed ferror per distinguere tra tipi diversi di errore nell accesso a file int ferror(file *fp); controlla se è stato commesso un errore in una precedente operazione di lettura o scrittura restituisce 0 se NON è stato commesso un errore,!=0 altrimenti int feof(file *fp) controlla se è stata raggiunta la fine del file restituisce 0 se NON è stata raggiunta la fine del file, diverso da 0 altrimenti void clearerr(file *fp) riporta i componenti eof ed error del descrittore al valore usuale 6

7 Operazioni di lettura e scrittura Vi sono 4 modi diversi per leggere/scrivere dati da/su file: precisando il formato dei dati in ingresso e in uscita accedendo ai dati carattere per carattere linea per linea blocco per blocco Generalmente si adotta l accesso linea per linea nel caso di flussi di testo e blocco per blocco in presenza di flussi binari. Lettura e scrittura precisando il formato dei dati 4 modi (2 già li conosciamo): int printf(stringa di controllo, elementi); int scanf(stringa di controllo, elementi); int fprintf(file *fp, stringa di controllo, elementi); int fscanf(file *fp, stringa di controllo, elementi); scanf e printf fanno riferimento a stdin e stdout fprintf e fscanf fanno riferimento al file (il cui descrittore è) passato come parametro tutte restituiscono il numero di elementi effettivamente letti o scritti restituiscono un numero negativo in caso di errore 7

8 Lettura e scrittura carattere per carattere Funzioni che leggono da/scrivono su file carattere per carattere: int getchar(); int putchar(int c); int getc(file *fp); int putc(int c, FILE *fp); int fgetc(file *fp); int fputc(int c, FILE *fp); le funzioni get restituiscono il carattere letto le funzioni put ricevono il carattere da scrivere e restituiscono il carattere scritto getchar e putchar fanno riferimento a stdin e stdout tutte restituiscono il valore EOF in caso di errore per distinguere tra fine file o un altro errore usare (dopo l'esecuzione della get/put) feof o ferror Esempio: programma che legge e mostra sul video il contenuto del file di tipo testo di nome filechar : #include <stdio.h> /* Contiene la definizione di EOF, del tipo FILE e * le testate delle funzioni che operano su file */ #include <stddef.h> /* Contiene la definizione di NULL */ main() { FILE *fp; char c; fp = fopen("filechar", "r"); /* file aperto in lettura con modalità testo */ if (fp!= NULL){ c = fgetc(fp); while (c!= EOF){ putchar(c); c = fgetc(fp); fclose(fp); else { printf("il file non può essere aperto\n"); 8

9 Lettura e scrittura linea per linea linea sequenza di caratteri terminata da carattere newline 4 funzioni: gets e puts per lettura da stdin e scrittura su stdout fgets e fputs invece operano sul file specificato come parametro char *gets(char *s); legge fino a newline dopo i caratteri letti, in s mette \0 (non newline!!) restituisce NULL se c'è stato un errore int puts(char *s); scrive il contenuto di s, fino al carattere \0 escluso, e poi un carattere di newline restituisce 0 se operazione a buon fine, 0 altrimenti char *fgets(char *s, int n, FILE *fp) ; legge caratteri dal file fp (e li mette in s) fino a quando o ho letto n 1 elementi, o ho raggiunto un carattere newline, o ho raggiunto la fine del file inserisce in s eventuali newline incontrati poi inserisce in s carattere \0 restituisce NULL in caso di errore int fputs(char *s, FILE *fp); scrive nel file fp il contenuto di s fino a \0 escluso, poi newline restituisce 0 se operazione a buon fine, 0 altrimenti 9

10 Esempio La funzione copiaselettiva legge filein linea per linea e scrive, in fileout, solo le linee che contengono la stringa di riferimento ricevuta come parametro restituisce 1 se operazione a buon fine, 0 altrimenti #include <stdio.h> #include <stddef.h> #include <string.h> #define OK 1 #define ERROR 0 #define MAXLINE 100 int copiaselettiva(char refstr[]){ char line[maxline]; FILE *fin, *fout; fin = fopen("filein", "r"); /* filein e' aperto in lettura con modalita' testo */ if (fin == NULL) return ERROR; fout = fopen("fileout", "w"); /* fileout e' aperto in scrittura con modalita' testo */ if(fout == NULL){ fclose(fin); return ERROR; while(fgets(line, MAXLINE, fin)!= NULL){ /* fgets legge da filein al più MAXLINE 1 caratteri * e assegna a line i caratteri letti, inclusi * eventuali newline, e termina la stringa con \0 */ if(strstr (line, refstr)!= NULL){ /* strstr restituisce posizione della prima * occorrenza della stringa refstr nella stringa * line; se refstr non è contenuta in line viene * restituito NULL */ fputs(line, fout); fclose(fin); fclose(fout); return OK; 10

11 Lettura e scrittura per blocchi int fread(void *ptr, dimelemento, numelementi, FILE *fp); legge e memorizza a partire dall'indirizzo di memoria ptr restituisce il numero elementi letti se quanto viene letto è inferiore a quanto richiesto usare feof o ferror per capirne il motivo int fwrite(void *ptr, dimelemento, numelementi, FILE *fp); scrive i dati prelevandoli in memoria a partire dall'indirizzo ptr restituisce il numero di elementi scritti se quanto viene scritto è inferiore a quanto richiesto usare feof o ferror per capirne il motivo fread e fwrite sono utili per la lettura e scrittura di dati di tipo strutturato Usati tipicamenti per leggere e scrivere file binari Esempio di funzione: si abbia un parametro pp che è il descrittore di un file con record di tipo Persona la struttura Persona contiene campi nome, cognome, indirizzo si vuole aggiungere un campo CodiceFiscale e mettere i dati completi nel file il cui descrittore è passato in un parametro np i codici fiscali vengono letti da un file cf, passato come parametro i file pp e cf sono assunti aperti in lettura e scrittura il file np è assunto aperto in scrittura tutti i file sono binari Codifichiamo la funzione AggiornaPersone 11

12 typedef struct { char nome[20]; char cognome[20]; char indirizzo[50]; Persona; typedef char CodFisc[16]; typedef struct { char nome[20]; char cognome[20]; char indirizzo[50]; CodFisc CodiceFiscale; NuovaPersona; Esempio (cont.) int AggiornaPersone (FILE *pp, FILE *cf, FILE *np){ Persona perscorr; CodFisc cfcorr; NuovaPersona nuovaperscorr; rewind(pp); /* rewind porta la posizione corrente nel file * sul primo byte del file */ rewind(cf); rewind(np); while(fread(&perscorr,sizeof(persona),1,pp)!= 0){ /* non raggiunta la fine del file pp */ fread(&cfcorr, sizeof(codfisc), 1, cf); /* NB le strcpy seguenti sono di fatto * assegnamenti tra array di caratteri */ strcpy(nuovaperscorr.nome, perscorr.nome); strcpy(nuovaperscorr.cognome, perscorr.cognome); strcpy(nuovaperscorr.indirizzo, perscorr.indirizzo); strcpy(nuovaperscorr.codicefiscale, cfcorr); fwrite(&nuovaperscorr,sizeof(nuovapersona),1,np); 12

13 Accesso diretto Accedere in modo diretto ad un file significa accedere direttamente a un particolare byte di un file praticamente come se il file fosse un array int fseek(file *fp, long offset, int refpoint); imposta la posizione corrente come spostata di offset rispetto a: inizio del file se refpoint vale SEEK_SET attuale posizione corrente se refpoint vale SEEK_CUR fine del file se refpoint vale SEEK_END SEEK_SET, SEEK_CUR e SEEK_END sono costanti di stdio.h restituisce 0 se operazione a buon fine, 0 altrimenti long ftell(file *fp); restituisce la posizione corrente nel file fp per i file aperti in modo binario è il numero di byte dall inizio per i file aperti in modo testo il numero dipende dalla implementazione void rewind(file *fp); fare rewind(f) è come fare fseek(f,0,seek_set) riavvolge il file, rimettendo la posizione corrente all'inizio rewind però non ritorna alcun valore Tipicamente si accede in modo diretto ai file aperti in modo binario, non a quelli aperti in modo carattere 13

14 Esempio Si vuole invertire il contenuto del file numint contenente interi (si vuole cioè scambiare il primo elemento con l'ultimo, il secondo con il penultimo etc.) il file verrà aperto in modalità binaria #include <stdio.h> #include <stddef.h> #include <stdlib.h> main() { FILE *f; long int inizio, fine; int tempi, tempf; f = fopen("numint", "rb+"); /* il file e' aperto in read/write in modo binario */ if(f == NULL){ puts("non è stato possibile aprire il file numint"); /* si noti l'uso di puts al posto di printf */ exit(1); /* exit provoca la conclusione non anomala del * programma e la restituzione del controllo al * sistema operativo */ inizio = 0; fseek(f, sizeof(int), SEEK_END); fine = ftell(f); /* comincio con il mettere il valore di fine * sull'ultimo intero prima della fine del file */ while (inizio < fine){ fseek(f, inizio, SEEK_SET); fread(&tempi, sizeof(int), 1, f); fseek(f, fine, SEEK_SET); fread(&tempf, sizeof(int), 1, f); /* devo riposizionarmi perche' il precedente fread * ha * spostato la posizione corrente sull'elemento * successivo */ fseek (f, fine, SEEK_SET); fwrite (&tempi, sizeof(int), 1, f); fseek (f, inizio, SEEK_SET); fwrite (&tempf, sizeof(int), 1, f); inizio = inizio + sizeof(int); fine = fine sizeof(int); 14

Laboratorio 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 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

Dettagli

DOTT. ING. LEONARDO RIGUTINI DIPARTIMENTO INGEGNERIA DELL INFORMAZIONE UNIVERSITÀ DI SIENA VIA ROMA 56 53100 SIENA UFF. 0577234850-7102 RIGUTINI@DII

DOTT. 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/

Dettagli

Introduzione al C. Stream e disk file

Introduzione 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:

Dettagli

Linguaggio C: i file

Linguaggio 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

Dettagli

Gestione dei File. dischi nastri cd

Gestione 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

Dettagli

Input/output da file I/O ANSI e I/O UNIX FLUSSI E FILE FLUSSI FLUSSI di TESTO FLUSSI BINARI FILE

Input/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

Dettagli

Gestione dei file. Linguaggio ANSI C Input/Output - 13

Gestione 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

Dettagli

Gestione dei File in C

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

Dettagli

Introduzione. 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. 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

Dettagli

Linguaggio C Gestione File

Linguaggio 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

Dettagli

I 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. 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

Dettagli

FILE: 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 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

Dettagli

Gestione dei File C. Generalità

Gestione 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

Dettagli

Suggerimenti, note utili ed errori comuni. Fondamenti di informatica T

Suggerimenti, 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

Dettagli

Esercizi. I File ed il C

Esercizi. 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

Dettagli

I file Laboratorio di Linguaggi di Programmazione a.a. 2001/2002

I 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

Dettagli

Fondamenti di Informatica T. Linguaggio C: File

Fondamenti 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.

Dettagli

Sulla libreria standard, III. Manipolare file con stdio.h

Sulla libreria standard, III. Manipolare file con stdio.h Sulla libreria standard, III Manipolare file con stdio.h 1 Libreria per input/output Con libreria si intende una collezione di sottoprogrammi che vengono utilizzati per lo sviluppo di software non eseguibili,

Dettagli

LP1 Lezione 13: i File in C. Maurizio Tucci

LP1 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

Dettagli

L accesso ai dispositivi esterni (tastiera, monitor, file,...) viene gestito mediante canali di comunicazione.

L 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,

Dettagli

Sono file di caratteri, organizzati in linee. Ogni linea e` terminata da una marca di fine linea (newline, cara ttere '\n').

Sono 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

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica 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

Dettagli

Capitolo 11 Elaborazione di file

Capitolo 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

Dettagli

caratteri, immagini, suoni, ecc.

caratteri, 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

Dettagli

Scrittura formattata - printf

Scrittura 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

Dettagli

SOMMARIO SU LETTURA E SCRITTURA (I/O) DEGLI STANDARD FILES

SOMMARIO 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

Dettagli

DIPARTIMENTO DI ELETTRONICA, INFORMAZIONE E BIOINGEGNERIA. INFORMATICA B Ingegneria Elettrica. I file in Matlab

DIPARTIMENTO 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

Dettagli

Struttura dati FILE. Concetto di FILE

Struttura 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

Dettagli

IL CONCETTO DI FILE. È illecito operare oltre la fine del file.

IL 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

Dettagli

Sono file di caratteri, organizzati in linee. Ogni linea è terminata da un marcatore di fine linea (newline, carattere \n ).

Sono file di caratteri, organizzati in linee. Ogni linea è terminata da un marcatore di fine linea (newline, carattere \n ). I file Il file è l unità logica di memorizzazione dei dati su memoria di massa. Consente una memorizzazione persistente dei dati, non limitata dalle dimensioni della memoria centrale. Generalmente un file

Dettagli

File binari, Operazioni sui File binari, Allocazione dinamica della memoria

File 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

Dettagli

FILE BINARI FILE BINARI

FILE 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

Dettagli

Corso 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 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,

Dettagli

MATLAB: FILES. Informatica B/C - A.A. 2013/2014

MATLAB: 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

Dettagli

Introduzione al Linguaggio C

Introduzione 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

Dettagli

Caratteri e stringhe

Caratteri 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

Dettagli

GESTIONE DEI FILE IL CONCETTO DI FILE APERTURA E CHIUSURA DI UN FILE OPERARE SUI FILE

GESTIONE DEI FILE IL CONCETTO DI FILE APERTURA E CHIUSURA DI UN FILE OPERARE SUI FILE GESTIONE DEI FILE Per poter mantenere disponibili i dati tra le diverse esecuzioni di un programma (persistenza dei dati) è necessario poterli archiviare su memoria di massa Un file è una astrazione fornita

Dettagli

Laboratorio di Algoritmi e Strutture Dati

Laboratorio di Algoritmi e Strutture Dati Laboratorio di Algoritmi e Strutture Dati Docente: Camillo Fiorentini 16 ottobre 2007 1 Rappresentazioni di caratteri in C In C un carattere è una costante intera il cui valore è dato dal codice ASCII

Dettagli

Gestione di files Motivazioni

Gestione 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)

Dettagli

Se vogliamo cambiarlo: i dati vengono sovrascritti. 300 White Jones (vecchio valore) 300 Worthington 0.00

Se 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

Dettagli

Fondamenti di Informatica. Tecniche di input/output per l'accesso ai file

Fondamenti di Informatica. Tecniche di input/output per l'accesso ai file Corso di per il corso di Laurea di Ingegneria Meccanica Tecniche di input/output per l'accesso ai file Università degli Studi di Udine - A.A. 2010-2011 Docente Ing. Sandro Di Giusto Ph.D. 1 L'importanza

Dettagli

---------------------------------------------------------------- Puntatori a funzione. In C è possibile utilizzare dei puntatori a funzioni, ovvero

---------------------------------------------------------------- Puntatori a funzione. In C è possibile utilizzare dei puntatori a funzioni, ovvero ---------------------------------------------------------------- Puntatori a funzione. In C è possibile utilizzare dei puntatori a funzioni, ovvero delle variabili a cui possono essere assegnati gli indirizzi

Dettagli

Linguaggio C La libreria standard

Linguaggio C La libreria standard FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C La libreria standard 2001 Pier Luca Montessoro - Davide Pierattoni

Dettagli

Strutture dati e realizzazione in C. Componenti software:

Strutture dati e realizzazione in C. Componenti software: Strutture dati e realizzazione in C Strutture dati: Termine usato per indicare tipi con elementi del dominio compositi, ad esempio: vettori e matrici; tavole; liste; insiemi; pile e code; alberi e grafi.

Dettagli

FILE BINARI FILE BINARI FILE BINARI. OUTPUT BINARIO: fwrite()

FILE 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

Dettagli

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni

Le 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

Dettagli

I 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. 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 file

Dettagli

Precedenza e associatività. Complementi sul C - 2. Esempi. Esempi

Precedenza e associatività. Complementi sul C - 2. Esempi. Esempi Complementi sul C - 2 Ver. 2.4 2010 - Claudio Fornaro - Corso di programmazione in C Precedenza e associatività () [] ->. S D! ~ ++ + * & (cast ) sizeof S D * / % S D + - (somma e sottrazione) S D >

Dettagli

Esercizi File Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR

Esercizi File Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Domenico Daniele Bloisi Si ringrazia Raffaele Nicolussi Docenti Parte I prof. Silvio Salza salza@dis.uniroma1.it

Dettagli

GESTIONE DEI FILE IL CONCETTO DI FILE

GESTIONE DEI FILE IL CONCETTO DI FILE GESTIONE DEI FILE Per poter mantenere disponibili i dati tra le diverse esecuzioni di un programma (persistenza dei dati) è necessario poterli archiviare su memoria di massa Un file è una astrazione fornita

Dettagli

Linguaggio C: Stringhe di caratteri e File

Linguaggio C: Stringhe di caratteri e File Linguaggio C: Stringhe di caratteri e File ESEMPIO: Lettura da tastiera e stampa a video di una sequenza di caratteri #include main() int c; printf("inserisci dei caratteri"); printf("(

Dettagli

Struttura a record. File ad accesso diretto. Modalità di apertura. Modalità di apertura

Struttura 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

Dettagli

STRINGHE: ARRAY DI CARATTERI! a p e \0

STRINGHE: ARRAY DI CARATTERI! a p e \0 STRINGHE: ARRAY DI CARATTERI! Una stringa di caratteri in C è un array di caratteri terminato dal carattere '\0' s a p e \0 0 1 2 3 Un vettore di N caratteri può dunque ospitare stringhe lunghe al più

Dettagli

ARCHIVI E FILE. Prof. Ciaschetti

ARCHIVI 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

Dettagli

OTTAVA ESPERIENZA DI LABORATORIO. L elaborazione dei files in C

OTTAVA 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

Dettagli

Stringhe e allocazione dinamica della memoria

Stringhe e allocazione dinamica della memoria Stringhe e allocazione dinamica della memoria Esercizio Scrivere un programma strings.c che legge da standard input una sequenza di parole separate da uno o più spazi, e stampa le parole lette, una per

Dettagli

Prefissi (modificatori). signed, unsigned, short, long. Dichiarazione delle variabili. ; Es:

Prefissi (modificatori). signed, unsigned, short, long. Dichiarazione delle variabili. <tipo> <nome>; Es: LINGUAGGIO C 1 Creato nel 1972 da Dennis Ritchie (Kernighan & Ritchie, Linguaggio C, 2nd ed.) Caratteristiche: Potenza Flessibilità Successo Portabilità Modularità Da C bisogna partire per imparare C++

Dettagli

FILE BINARI. I file di testo non sono indispensabili: sono semplicemente comodi 1

FILE BINARI. I file di testo non sono indispensabili: sono semplicemente comodi 1 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

Dettagli

Unità Didattica 5 Linguaggio C. Stringhe. Accesso a file ASCII. Strutture.

Unità 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

Dettagli

Esercitazione 6. Array

Esercitazione 6. Array Esercitazione 6 Array Arrays Array (o tabella o vettore): è una variabile strutturata in cui è possibile memorizzare un numero fissato di valori tutti dello stesso tipo. Esempio int a[6]; /* dichiarazione

Dettagli

L Allocazione Dinamica della Memoria

L Allocazione Dinamica della Memoria L Allocazione Dinamica della Memoria Maurizio Palesi DIIT Università di Catania Viale Andrea Doria 6, 95125 Catania mpalesi@diit.unict.it http://www.diit.unict.it/users/mpalesi Sommario Questo documento

Dettagli

puntatori Lab. Calc. AA 2007/08 1

puntatori 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

Dettagli

Input/output in C e in C++

Input/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

Dettagli

FILE BINARI FILE BINARI

FILE 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

Dettagli

Il linguaggio C. Notate che...

Il linguaggio C. Notate che... Il linguaggio C Notate che... 1 Il C è un linguaggio a blocchi int main (void) { blocco } 2 Il C è un linguaggio a blocchi (2) Non è possibile mischiare dichiarazioni e comandi! int main (void) { } Dichiarazione

Dettagli

I puntatori. Un puntatore è una variabile che contiene l indirizzo di un altra variabile. puntatore

I puntatori. Un puntatore è una variabile che contiene l indirizzo di un altra variabile. puntatore I puntatori Un puntatore è una variabile che contiene l indirizzo di un altra variabile. puntatore...... L operatore & fornisce l indirizzo di un oggetto: p = &c; assegna a p l indirizzo di c, i.e., p

Dettagli

IL PRIMO PROGRAMMA IN C

IL PRIMO PROGRAMMA IN C IL PRIMO PROGRAMMA IN C LO SCOPO Si vuole scrivere un programma in linguaggio C che chieda all utente di introdurre da tastiera due numeri interi e visualizzi il valore della loro somma sul video SOLUZIONE

Dettagli

Informatica 1. Corso di Laurea Triennale in Matematica. Gianluca Rossi

Informatica 1. Corso di Laurea Triennale in Matematica. Gianluca Rossi Informatica 1 Corso di Laurea Triennale in Matematica Gianluca Rossi gianluca.rossi@uniroma2.it Dipartimento di Matematica Università di Roma Tor Vergata 11: Stringhe (www.informatica-uno.blogspot.com)

Dettagli

Variabili e Istruzioni

Variabili e Istruzioni Exit Menù Variabili e Istruzioni 1 Le Variabili Una VARIABILE è un oggetto identificato da un NOME e da uno STATO, detto CONTENUTO o VALORE. Possiamo immaginarla come una scatola contenuto Pippo 11 nome

Dettagli

Le funzioni, e le istruzioni di input/output

Le funzioni, e le istruzioni di input/output Linguaggio C Le funzioni, e le istruzioni di input/output 1 Funzioni! Sono sottoprogrammi per svolgere un particolare compito! Sequenze di istruzioni (raggruppate tramite le parentesi graffe) alle quali

Dettagli

FILE BINARI. I file di testo non sono indispensabili: sono semplicemente comodi 1

FILE BINARI. I file di testo non sono indispensabili: sono semplicemente comodi 1 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

Dettagli

Lettura da tastiera e scrittura su monitor

Lettura 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

Dettagli

Funzioni matlab per la gestione dei file. Informatica B Prof. Morzenti

Funzioni 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

Dettagli

Caratteri e stringhe

Caratteri e stringhe Caratteri e stringhe Vettori di caratteri Il tipo stringa Terminatore nullo Input/output di stringhe 2 Vettori di caratteri Stringhe in C Nel linguaggio C non è supportato esplicitamente alcun tipo di

Dettagli

Informatica 1. Prova di recupero 17 Febbraio 2003

Informatica 1. Prova di recupero 17 Febbraio 2003 Informatica 1 Prova di recupero 17 Febbraio 2003 Si risolvano i seguenti esercizi. Ai fini della determinazione del voto finale il loro punteggio andrà sommato al punteggio del laboratorio. Il tempo complessivo

Dettagli

Dove die( stringa ) è una funzione di utilità del php che stampa la stringa e fa terminare lo script.

Dove die( stringa ) è una funzione di utilità del php che stampa la stringa e fa terminare lo script. I file in PHP Un file è un archivio elettronico contenente informazioni (dati) memorizzate su memoria di massa. Il file ha la caratteristica di consentire la lettura, la scrittura e la modifica dei dati

Dettagli

Caratteri e stringhe. Vettori di caratteri. Il tipo stringa Terminatore nullo Input/output di stringhe Politecnico di Torino 1

Caratteri e stringhe. Vettori di caratteri. Il tipo stringa Terminatore nullo Input/output di stringhe Politecnico di Torino 1 Caratteri e stringhe Il tipo stringa Terminatore nullo Input/output di stringhe 2 2006 Politecnico di Torino 1 Stringhe in C Nel linguaggio C non è supportato esplicitamente alcun tipo di dato stringa

Dettagli

Matlab: Gestione avanzata dei file

Matlab: 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

Dettagli

Esercizio 1 Liste: calcolo perimetro di un poligono

Esercizio 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

Dettagli

Errori frequenti Cicli iterativi Array. Cicli e array. Laboratorio di Programmazione I. Corso di Laurea in Informatica A.A.

Errori frequenti Cicli iterativi Array. Cicli e array. Laboratorio di Programmazione I. Corso di Laurea in Informatica A.A. Cicli e array Laboratorio di Programmazione I 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 Lez. 8 - Introduzione all ambiente

Dettagli

Definizione Allocazione e deallocazione di variabili Allocazione e deallocazione di vettori

Definizione Allocazione e deallocazione di variabili Allocazione e deallocazione di vettori 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

Dettagli

Vettori di caratteri. Caratteri e stringhe. Stringhe in C. Vettori di caratteri. char saluto[10] ; B u o n g i o r n o 4. Esempio.

Vettori di caratteri. Caratteri e stringhe. Stringhe in C. Vettori di caratteri. char saluto[10] ; B u o n g i o r n o 4. Esempio. Vettori di caratteri Il tipo stringa Terminatore nullo Input/output di stringhe Caratteri e stringhe 2 Stringhe in C Vettori di caratteri Nel linguaggio C non è supportato esplicitamente alcun tipo di

Dettagli

giapresente( ) leggi( ) char * strstr(char * cs, char * ct) NULL

giapresente( ) 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

Dettagli

Linguaggio C: introduzione

Linguaggio C: introduzione Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C: introduzione La presente dispensa e da utilizzarsi

Dettagli

Una testina di lettura/scrittura (ideale) indica in ogni istante il record corrente:

Una testina di lettura/scrittura (ideale) indica in ogni istante il record corrente: Per poter mantenere disponibili i dati tra le diverse esecuzioni di un programma (persistenza dei dati) è necessario poterli archiviare su memoria di massa! Un file è una astrazione fornita dal sistema

Dettagli

File di testo e file binari Directory

File di testo e file binari Directory File di testo e file binari Directory Dove salvare i file perché vengano ritrovati dal programma? CASO 1 Programma eseguito da ambiente di lavoro (MS Visual C++). La directory in cui viene creato/letto

Dettagli

Linguaggio C. tipi di dati definiti dall utente. Università degli Studi di Brescia. Docente: Massimiliano Giacomin

Linguaggio C. tipi di dati definiti dall utente. Università degli Studi di Brescia. Docente: Massimiliano Giacomin Linguaggio C tipi di dati definiti dall utente Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Tipi di dati in C Predefiniti

Dettagli

2) FILE BINARI: è una sequenza di byte avente una corrispondenza uno a uno con la sequenza ricevuta dal dispositivo esterno.

2) FILE BINARI: è una sequenza di byte avente una corrispondenza uno a uno con la sequenza ricevuta dal dispositivo esterno. Tipo File Per memorizzare un dato su un supporto magnetico come un hard disk o un nastro, o più in generale su un'unità di memoria di massa viene utilizzata un tipo di dato chiamato file. Un file può essere

Dettagli

Laboratorio 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 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 08/05/08 Nota Questi lucidi sono tratti

Dettagli

Funzioni di I/O per numeri. Input e output di valori numerici. Input formattato scanf. Stream preesistenti

Funzioni di I/O per numeri. Input e output di valori numerici. Input formattato scanf. Stream preesistenti Funzioni di I/O per numeri 2 Input e output di valori numerici Ver. 2.4.2 2012 - Claudio Fornaro - Corso di programmazione in C Per utilizzare le funzioni di Input/Output bisogna includere il file di intestazione

Dettagli

Fondamenti di Informatica T. Linguaggio C: i puntatori

Fondamenti di Informatica T. Linguaggio C: i puntatori Linguaggio C: i puntatori Il puntatore E` un tipo di dato, che consente di rappresentare gli indirizzi delle variabili allocate in memoria. Dominio: Il dominio di una variabile di tipo puntatore è un insieme

Dettagli

Capitolo 11 Elaborazione di file

Capitolo 11 Elaborazione di file Capitolo 11 Elaborazione di file Introduzione La gerarchia dei dati File e Stream Creare un file ad accesso sequenziale Lettura di dati da un file ad accesso sequenziale File ad accesso casuale Creare

Dettagli

Puntatori. Un puntatore contiene un numero che indica la locazione di memoria dove è presente la variabile puntata

Puntatori. Un puntatore contiene un numero che indica la locazione di memoria dove è presente la variabile puntata Puntatori int i = 10; int * pi = &i; pi i = 10 116 int * pi = pi contiene un informazione che mi permette di accedere ( puntare ) ad una variabile intera Un puntatore contiene un numero che indica la locazione

Dettagli

I File. I file vengono distinti in due categorie: ILOHGLWHVWR costituiti da caratteri ed organizzati in linee (ciascuna terminata da \n ) )LOHGLWHVWR

I File. I file vengono distinti in due categorie: ILOHGLWHVWR costituiti da caratteri ed organizzati in linee (ciascuna terminata da \n ) )LOHGLWHVWR Lezione 10 File: Organizzazione degli archivi Gestione di file in C/C++ Apertura di un File Lettura e Scrittura di file Lettura/scrittura di blocchi File ad accesso diretto I File Il ILOH e l unita logica

Dettagli

Linguaggio C: le funzioni. Introduzione e sintassi

Linguaggio C: le funzioni. Introduzione e sintassi ISIS "Guido Tassinari" di Pozzuoli Indirizzo Informatico - Articolazione Informatica Informatica Prof. A.S. 2012/2013 Linguaggio C: le funzioni. Introduzione e sintassi 21/10/2012 Introduzione Spesso alcuni

Dettagli

Fondamenti di Informatica T-1, 2009/2010 Modulo 2 Prova d Esame 5 di Giovedì 15 Luglio 2010 tempo a disposizione 2h30'

Fondamenti di Informatica T-1, 2009/2010 Modulo 2 Prova d Esame 5 di Giovedì 15 Luglio 2010 tempo a disposizione 2h30' Prima di cominciare: si scarichi dal sito http://esamix.labx il file StartKit5.zip contenente i file necessari (solution di VS2008 e progetto compresi). Avvertenze per la consegna: apporre all inizio di

Dettagli

Primi passi col linguaggio C

Primi 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

Dettagli

Esercizio 1: Puntatori impiegati che sono manager

Esercizio 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

Dettagli

Rappresentazione binaria delle variabili (int e char)

Rappresentazione binaria delle variabili (int e char) Rappresentazione binaria delle variabili (int e char) int e char son i due tipi utilizzati dal linguaggio C per la rappresentazione di valori interi; ai valori delle variabili del primo tipo sono assegnati

Dettagli