Linguaggio C Gestione File

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Linguaggio C Gestione File"

Transcript

1 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 C, un file è visto come un flusso (stream) sequenziale di byte che termina con un marcatore di EOF (end-of-file). I programmi C possono accedere a file (leggere e scrivere) mediante le funzioni standard definite nella libreria di I/O "stdio.h". Ogni programma vede il file come una sequenza di componenti omogenee (record logici). In C i file si possono dividere in due categorie: file di testo : costituiti da caratteri ed organizzati in linee (ciascuna terminata da '\n'). file binari : visti come sequenze di byte. Nel primo caso, abbiamo file di caratteri, organizzati in linee; ogni linea è terminata da una marca di fine linea (newline, carattere '\n'). Il record logico può essere il singolo carattere oppure la singola linea. Nota: I file hanno una struttura sequenziale, cioè i record logici sono organizzati in una sequenza rigidamente ordinata; per accedere ad un particolare record logico è necessario "scorrere" tutti quelli che lo precedono.

2 In corrispondenza di file, le classiche operazioni sono: Apertura di un file: prima di accedere ad un file è necessario aprirlo; l operazione di apertura compie le azioni preliminari necessarie affinchè il file possa essere acceduto. Accesso ad un file: una volta aperto il file, è possibile leggere/scrivere il file. Chiusura di un file: alla fine delle operazioni (lettura o scrittura) è necessario chiudere il file per memorizzare permanentemente il suo contenuto in memoria di massa. Per aprire un file in C è necessario definire una variabile di tipo puntatore a file: // FILE : tipo non primitivo definito in stdio.h FILE *fopen(char *name, char *mode); // funzione di apertura file. dove: name: è una stringa che rappresenta il nome (assoluto o relativo) del file nel file system. mode: esprime la modalità di accesso scelta. L'operazione di apertura (se eseguita con successo) ritorna come risultato un puntatore al file aperto; Se l'apertura fallisce, fopen restituisce il valore NULL. Tipici motivi di fallimento: - Il file non esiste. - Il file viene aperto in una modalità incompatibile con le sue proprietà ( es.: file read-only, aperto in scrittura)

3 Modalità di apertura: r : solo lettura - sul file sarà possibile eseguire soltanto operazioni di lettura (no scrittura). Se il file non esiste la funzione fopen ritornerà il codice di errore NULL. w : solo scrittura - sul file sarà possibile eseguire soltanto operazioni di scrittura (no lettura). Se il file non esiste verrà creato, altrimenti il contenuto del file preesistente sarà perso. r+ : lettura e scrittura - sul file sarà possibile eseguire operazioni di lettura e scrittura. Se il file non esiste la funzione fopen ritornerà il codice di errore NULL. w+ : scrittura e lettura - sul file sarà possibile eseguire operazioni di scrittura e lettura. Se il file non esiste verrà creato, altrimenti il contenuto del file preesistente sarà perso. a : append - sul file sarà possibile eseguire soltanto operazioni di scrittura a fine file, ovvero tutte le scritture verranno eseguite in coda al contenuto attuale del file. Se il file non esiste verrà creato, in caso contrario il contenuto del file preesistente verrà mantenuto. a+ : append e lettura - come append con l aggiunta della lettura. b : binary - se una b viene aggiunta alle modalità precedenti si indica che il file è binario. Es.: apertura di file in lettura: fp = fopen("filename", "r"); EOF fp

4 Es.: apertura di file in scrittura: fp = fopen("filename", "w"); File nuovo: File esistente - sovrascritto: EOF fp fp Es.: apertura di file in append: fp = fopen("filename", "a"); Esempio pratico: File *fp; fp=fopen("elenco.dat", "r"); Nota: fp rappresenta, dall'apertura in poi, il riferimento da utilizzare nelle operazioni di accesso al file specificato (elenco.dat); esso individua: - il file - l elemento corrente all interno del file EOF fp

5 Chiusura file: Al termine delle operazioni di accesso al file, esso deve essere chiuso. L'operazione di chiusura si realizza con la funzione: int fclose(file *fp); // dove fp è il puntatore al file da chiudere. La funzione fclose ritorna il valore 0 se la chiusura è avvenuta correttamente, altrimenti la costante EOF. Esempio: Funzione feof(): #include <stdio.h> int main() { fp = fopen("c:\\documenti\\risultati.txt", "w"); // fp = fopen("c:/documenti/risultati.txt", "w"); notazione linux/unix // operazioni di scrittura su file fclose(fp); return 0; Durante la fase di accesso ad un file, questa funzione ci consente di verificare la presenza della marca di fine file; prototipo: int feof(file *fp); In altre parole, controlla se è stata raggiunta la fine del file fp nella operazione di lettura o scrittura precedente. Restituisce il valore 0 se non è stata raggiunta la fine del file, altrimenti un valore diverso da zero.

6 File standard di I/O: Quando inizia l esecuzione di un programma in C, tre file di testo vengono aperti automaticamente: stdin, standard input, aperto in lettura stdout, standard output, aperto in scrittura stderr, standard error, aperto in scrittura Dove stdin, stdout, stderr sono variabili di tipo puntatore a file, automaticamente (ed implicitamente) definite. Il file pointer stdin è associato dal sistema alla tastiera, mentre gli altri due sono assegnati al video. Lettura e scrittura di file: Dopo aver aperto un file, su di esso possiamo eseguire operazioni di lettura e/o scrittura, compatibilmente con quanto specificato in fase di apertura. File di testo: sono disponibili funzioni di: a) Lettura/scrittura con formato: fscanf, fprintf b) Lettura/scrittura di caratteri: fgetc, fputc c) Lettura/scrittura di stringhe di caratteri: fgets, fputs. File binari: si utilizzano funzioni di lettura/scrittura di blocchi: fread, fwrite.

7 a) Lettura/scrittura con formato: Date le funzioni scanf e printf, esistono le rispettive versioni che operano su file in maniera esattamente uguale; presentano un parametro aggiuntivo per il puntatore al file di testo sul quale si vuole leggere o scrivere. int fscanf(file *fp, stringa_formato, indir_elementi); int fprintf(file *fp, stringa_formato, elementi); Le due funzioni restituiscono rispettivamente il numero di elementi letti/scritti; oppure un valore negativo in caso di errore. Esempi: int X; char Y; float Z; fp=fopen("risultati.txt", "r"); fscanf(fp, "%d %c %f", &X, &Y, &Z); prinf("x= %d Y= %c Z= %f", X, Y, Z); fclose(fp);. Si noti che: scanf(stringa_formato, indir_elementi); printf(stringa_formato, elementi); equivalgono a: int X=6; char Y='h'; float Z=9.8; fp=fopen("risultati.txt", "w"); fprintf(fp, "%d %c %f", X, Y, Z); fclose(fp);. fscanf(stdin, stringa_formato, indir_elementi); fprintf(stdout, stringa_formato, elementi);

8 // Visualizzazione contenuto di un file testo #include <stdio.h> int main() { char buf[80]; fp=fopen("testo.txt", "r"); if(fp!= NULL) { while(!feof(fp)) { if(fscanf(fp,"%s",buf) > 0) printf("%s ", buf); fclose(fp); else printf("errore apertura file! " ); return 0; Oppure:. if (fp!= NULL) { while (fscanf(fp,"%s", buf)>0) printf("%s ", buf); fclose(fp) else printf ("Errore apertura file! " ); // Scrittura su file testo: elenco nominativi #include <stdio.h> #include <string.h> int main() { char item[80]; fp=fopen("testo.txt", "w"); if(fp!= NULL) { printf("inizio inserimento (0 - per finire):\n"); printf("nominativo: "); scanf("%s", item); while(strcmp(item,"0")!= 0) { fprintf(fp, "%s\n", item); printf("nominativo: "); scanf("%s", item); fclose(fp); else printf("errore apertura file!" ); return 0;

9 b) Lettura/scrittura di caratteri: Funzioni simili a getchar e putchar, ma con un parametro aggiuntivo che rappresenta il puntatore al file sul quale si vuole leggere o scrivere: int fgetc (FILE *fp); ( esiste anche la getc() ) int fputc (int c, FILE *fp); ( esiste anche la putc() ) Nota: In caso di esecuzione corretta, restituiscono rispettivamente il carattere letto o scritto come intero (no char), altrimenti EOF. Esempi: int c; // apertura file c = fgetc(fp); int c = 'A'; // apertura file fputc(c, fp); Esercizio: in aggiunta all esempio a fianco, far scrivere i caratteri in un altro file. // Conta numero di caratteri numerici in un file. #include <stdio.h> int main() { int c, nc=0; fp = fopen("c:\\documenti\\risultati.txt", "r"); if(fp!= NULL) { while( (c=fgetc(fp))!= EOF ) if ( (c >= '0') && (c <= '9') ) nc++; printf("numero di caratteri numerici: %d", nc); fclose(fp); else printf("errore apertura file!" ); return 0;

10 c) Lettura/scrittura di stringhe di caratteri: in questo caso abbiamo funzioni simili a gets e puts: char *fgets(char *s, int n, FILE *fp); Trasferisce nella stringa s i caratteri letti dal file puntato da fp; i caratteri trasferiti sono n-1 oppure un numero inferiore se si incontra newline o la fine del file. La funzione fgets restituisce il puntatore a carattere: coincide con la stringa letta se tutto è andato bene, vale NULL in caso di errore o il file pointer sia a fine file. La funzione aggiunge automaticamente il carattere di fine stringa \0. int *fputs(char *s, FILE *fp); Trasferisce la stringa s nel file puntato da fp. Non copia il carattere terminatore \0 nè aggiunge un newline finale. La funzione restituisce l'ultimo carattere scritto in caso di terminazione corretta; EOF altrimenti. Esercizio1: creare un programma conta caratteri che: - Usi le funzioni fgets() e fputs(); - Prenda in input un file di testo (input.txt); - Per ogni riga calcoli il numero dei caratteri presenti nella riga; - Scriva la riga su un altro file (output.txt) aggiungendo il numero dei caratteri calcolato. Esercizio2: creare un programma che conti le righe di un file passato da riga di comando.

11 Lettura/scrittura di blocchi (file binari): Da un file binario possiamo leggere/scrivere un intero blocco di dati. Esso deve essere aperto in modalità binaria ("b"). Un file binario memorizza dati di qualunque tipo, in particolare dati che non sono caratteri (interi, reali, vettori o strutture). Nota: Il test di fine del file viene ottenuto con la funzione feof. int fread(void *vet, int size, int n, FILE *fp); La funzione fread legge n "elementi" dal file puntato da fp inserendoli nel vettore vet, ciascuno di dimensione size. Restituisce un intero che rappresenta il numero di elementi effettivamente letti. Esempio:. int vet[10], x; fp=fopen("valori.txt", "rb"); x=fread(vet, sizeof(int),10, fp); printf("valori effettivamente letti: %d\n", x); for (i=0; i<10; i++) printf("%d ",vet[i]);

12 int fwrite(void *vet, int size, int n, FILE *fp); La funzione fwrite scrive sul file puntato da fp n elementi del vettore vet, ciascuno di dimensione size. Restituisce un intero che rappresenta il numero di oggetti effettivamente scritti (inferiore ad n solo in caso di errore). Esempio: Oppure:. int vet[10]; int i, x=0; for (i=0; i<10; i++) vet[i]=i; fp=fopen("valori.txt", "wb"); x=fwrite(vet, sizeof(int),10, fp); printf("valori effettivamente scritti: %d\n", x);. fp=fopen("valori.txt", "wb"); for(i=0; i<10; i++) x += fwrite(&i, sizeof(int),1, fp);. Esercizio: programma che richieda in input il nome di un file e scriva in questo file un vettore di float.

13 /* Programma che scrive una sequenza di record (dati da input) in un file binario */ #include<stdio.h> typedef struct { char nome[20]; char cognome[20]; int eta; persona; int main() { persona p; int fine=0; if((fp=fopen("elenco.dat","wb"))!= NULL) { do { printf("dati persona?"); scanf("%s%s%d",p.nome, p.cognome, &p.eta); fwrite(&p,sizeof(persona),1,fp); printf("fine (si=1,no=0)?"); scanf("%d", &fine); while(fine == 0); fclose(fp); else printf("errore apertura file!" ); return 0; /* Programma che legge e stampa il contenuto di un file binario */ #include<stdio.h> typedef struct { char nome[20]; char cognome[20]; int eta; persona; int main() { persona p; if((fp=fopen("elenco.dat","rb"))!= NULL) { fread(&p, sizeof(persona),1, fp); while(!feof(fp)) { printf("%s %s %d\n",p.nome, p.cognome, p.eta); fread(&p,sizeof(persona),1,fp); fclose(fp); else printf("errore apertura file!" ); return 0; Oppure: if((fp=fopen("elenco.dat","rb"))!= NULL) { while(1) { if(fread(&p,sizeof(persona),1,fp) == 0) break; printf("%s %s %d\n",p.nome, p.cognome, p.eta);

14 Funzione fseek(): In C, oltre al modo sequenziale è possibile operare su file di byte anche in modalità random. La funzione fseek permette di muovere il puntatore di lettura/scrittura in una qualunque posizione all interno del file. int fseek(file *fp, long offset, int whence); fp : è il file pointer; offset : indica di quanti byte il file pointer deve essere spostato; se negativo lo spostamento è all indietro. whence : indica a partire da quale posizione muovere il file pointer: 0 (SEEK_SET) : inizio file 1 (SEEK_CUR): posizione corrente 2 (SEEK_CUR): fine file. La funzione fseek ritorna un valore negativo se si è verificato un errore, altrimenti uguale o maggiore di 0. Es.: int err, mode=0; FILE *fp ; long n=10l ; err = fseek(fp, n, mode) ; // il file pointer è posizionato sul decimo byte. La funzione ftell() ritorna la posizione corrente del file pointer (fp): long ftell(file *fp); Es.: FILE *fp ; long n; n = ftell(fp) ; Nota: la ftell ritorna il numero di byte dall inizio del file fino alla posizione corrente.

15 Funzione fflush(): In genere le operazioni di lettura/scrittura lavorano in modalità bufferizzata; ad esempio le operazioni di scrittura non vengono singolarmente eseguite su disco, ma vengono temporaneamente memorizzate su dei buffers per ottimizzare le prestazioni. Anche in fase di lettura da disco il sistema cerca di trasferire in memoria centrale una quantità di informazioni superiore a quella richiesta dal programmatore, al fine di ridurre il numero di letture e quindi di accesso a disco. Al momento della chiusura di un file o al termine dell esecuzione del programma il contenuto dei buffer viene scaricato su disco. La funzione fflush() assolve il compito di scaricare il contenuto del buffer associato al file pointer; es.: fp = fopen("nomefile", "w"); fprint(fp, "stringa di testo");... fflush(fp); Per disabilitare la bufferizazzione su di un file pointer (fp), si può usare la funzione: setbuf(fp, NULL); ad esempio per lo standard di output: setbuf(stdout, NULL);

16 Esercizi: - Programma che concateni due file binari, i cui nomi sono passati come parametri. - Programma "copyfile" che faccia la copia (testo/binaria) di un file in un altro, acquisiti come parametri; esempio esecuzione: copyfile.exe nomefile1 nomefile2

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

I/O Avanzato e File. Definizione di file File di testo in C Input robusto Formattazione avanzata Esercizi proposti Sommario

I/O Avanzato e File. Definizione di file File di testo in C Input robusto Formattazione avanzata Esercizi proposti Sommario Programmazione in C I/O Avanzato e File Definizione di file File di testo in C Input robusto Formattazione avanzata Esercizi proposti Sommario 2 Riferimenti al materiale Testi Kernighan & Ritchie: capitolo

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

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

Fondamenti di Informatica 2

Fondamenti 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

Dettagli

I/O INTERATTIVO. scanf: quello che è indispensabile sapere printf: quello che è utile sapere

I/O INTERATTIVO. scanf: quello che è indispensabile sapere printf: quello che è utile sapere I/O INTERATTIVO scanf: quello che è indispensabile sapere printf: quello che è utile sapere Input da tastiera Funzioni disponibili (tra le altre): scanf getchar Schema di funzionamento Tastiera Sistema

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

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

I file. I file. Classificazione per accesso. I file

I file. I file. Classificazione per accesso. I file I file 2 I file Ver. 2.4 File: sequenza di byte a cui il Sistema Operativo dà un nome ed una collocazione sul dispositivo di memoria di massa (es. disco) Può essere paragonato ad una lunga stringa Uno

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

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

File di testo in C. I/O Avanzato e File. Accesso ai file (1/4) File di testo in C. Accesso ai file (2/4) Accesso ai file (3/4)

File di testo in C. I/O Avanzato e File. Accesso ai file (1/4) File di testo in C. Accesso ai file (2/4) Accesso ai file (3/4) File di testo in C I/O Avanzato e File Accesso ai file Funzioni fopen/fclose Funzioni fget*/fput* Funzioni fprintf/fscanf Condizione feof 2 Accesso ai file (1/4) File di testo in C Un programma C può accedere

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

Esercizio 1. Esercizio 1

Esercizio 1. Esercizio 1 Esercizio 1 Un registratore di cassa registra su di un file binario alcuni dati relativi agli scontrini emessi. In particolare, tramite una struttura dati di nome scontrino, il registratore di cassa tiene

Dettagli

ARRAY E STRINGHE. ESERCIZIO 2 Scrivere un programma che calcola il numero di doppie e di dittonghi (2 vocali vicine) presenti in una stringa.

ARRAY E STRINGHE. ESERCIZIO 2 Scrivere un programma che calcola il numero di doppie e di dittonghi (2 vocali vicine) presenti in una stringa. 3 ITI - a.s. 2007-2008 Compiti di Informatica ESTATE 2008 ARRAY E STRINGHE Scrivere una funzione che carica da tastiera un array di n elementi e lo stampa invertendo il primo elemento con l'ultimo, il

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

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

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

Gestione dinamica della memoria Stringhe File

Gestione dinamica della memoria Stringhe File Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Gestione dinamica della memoria Stringhe File Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica

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

Puntatori. Fondamenti di Programmazione

Puntatori. Fondamenti di Programmazione Puntatori Fondamenti di Programmazione Funzioni utili stdio.h c = getchar(); restituisce un carattere letto da tastiera. Equivale a: scanf( %c, &c); putchar(c); scrive un carattere sullo schermo. Equivale

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

Esercitazione di Lab. di Sistemi Operativi 1 a.a. 2011/2012

Esercitazione di Lab. di Sistemi Operativi 1 a.a. 2011/2012 Sommario: Esercitazione di Lab. di Sistemi Operativi 1 a.a. 2011/2012 - System Call Parte 1 open (apertura file) creat (creazione file) close (chiusura file) write (scrittura file) read (lettura file)

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

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

ARCHIVI E FILE ARCHIVI FILE. Istituto Angioy Informatica. Prof. Ciaschetti

ARCHIVI 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

Dettagli

Esercitazione 4. Comandi iterativi for, while, do-while

Esercitazione 4. Comandi iterativi for, while, do-while Esercitazione 4 Comandi iterativi for, while, do-while Comando for for (istr1; cond; istr2) istr3; Le istruzioni vengono eseguite nel seguente ordine: 1) esegui istr1 2) se cond è vera vai al passo 3 altrimenti

Dettagli

Unità Didattica 1 Linguaggio C. Fondamenti. Struttura di un programma.

Unità Didattica 1 Linguaggio C. Fondamenti. Struttura di un programma. Unità Didattica 1 Linguaggio C Fondamenti. Struttura di un programma. 1 La storia del Linguaggio C UNIX (1969) - DEC PDP-7 Assembly Language BCPL - un OS facilmente accessibile che fornisce potenti strumenti

Dettagli

APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2013 2014 20.VI.2014

APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2013 2014 20.VI.2014 APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2013 2014 20.VI.2014 VINCENZO MARRA Indice Esercizio 1 1 Leggere stringhe e caratteri 1 Esercizio 2 2

Dettagli

È possibile definire vettori di qualunque tipo Possiamo, quindi, anche avere vettori di stringhe Ad esempio:

È possibile definire vettori di qualunque tipo Possiamo, quindi, anche avere vettori di stringhe Ad esempio: È possibile definire vettori di qualunque tipo Possiamo, quindi, anche avere vettori di stringhe Ad esempio: char * stringhe[4]; Se volessimo passare un array di stringhe ad un funzione/procedura dobbiamo

Dettagli