D Alcune funzioni della libreria standard del C
|
|
- Eloisa Nicoletti
- 4 anni fa
- Visualizzazioni
Transcript
1 D Alcune funzioni della libreria standard del C In questa appendice forniamo una descrizione dettagliata dei principali sottoprogrammi della libreria standard del C. In particolare, il Paragrafo D.1 tratta le operazioni di Input/Output; il Paragrafo D.2 le operazioni di gestione della memoria, il Paragrafo D.3 le operazioni di gestione delle stringhe e il D.4 raccoglie ulteriori operazioni di vario tipo. D.1 Gestione dell Input/Output La dichiarazione delle seguenti funzioni si trova nel file stdio.h. D.1.1 Lettura di caratteri D int getc (FILE * fp); Ritorna il prossimo carattere (byte) dal flusso fp, convertito in int, quindi sposta l'indicatore di posizione del file in avanti di un carattere. In caso di errore o se si raggiunge la fine del file, ritorna il carattere EOF e setta la variabile globale errno ad un valore opportuno diverso da zero. Di solito è implementata attraverso una macro e perciò è molto efficiente anche se può presentare problemi di effetti collaterali e non può essere usata come parametro di funzione. D int getchar (void); È definita come getc (stdin). È perciò anch'essa, di solito, una macro.
2 304 Appendice D D int fgetc (FILE * fp); Si comporta come getc, ma è implementata attraverso una funzione. È perciò un po più lenta, ma prende meno spazio per l'invocazione e può essere passata come argomento ad una funzione. D.1.2 Scrittura di caratteri D int putc (int c, FILE * fp); Scrive il carattere (byte) c nel flusso fp, nella posizione corrente del file, quindi sposta l'indicatore di posizione del file in avanti di un carattere. In caso di errore (file non aperto o che non può aumentare di dimensione) ritorna il valore EOF e setta la variabile globale errno ad un valore opportuno diverso da zero, altrimenti ritorna il carattere che ha scritto. Di solito è implementata attraverso una macro e perciò è molto efficiente anche se può presentare problemi di effetti collaterali e non può essere usata come parametro di funzione. D int putchar (int c); È definita come putc (c,stdin). È perciò anch'essa, di solito, una macro. D int fputc (int c, FILE * fp); Si comporta come putc, ma è implementata attraverso una funzione. È perciò un po più lenta, ma prende meno spazio per l'invocazione e può essere passata come argomento ad una funzione. D.1.3 Lettura di stringhe D char * gets (char * s); Legge caratteri dallo standard input ponendoli nell'array puntato da s, fino al primo carattere di ritorno a capo o al raggiungimento della fine del file. Il carattere di ritorno a capo è scartato. Viene aggiunto il carattere terminatore di stringa ('\0'), dopo l'ultimo carattere scritto nell'array; in caso di errore o di raggiungimento della fine del file senza alcuna lettura viene ritornato NULL, altrimenti viene ritornato s. La funzione non verifica che la stringa letta non ecceda lo spazio allocato per la stringa s. La funzione fa avanzare l'indicatore di posizione del file di un numero di caratteri pari a quelli effettivamente letti. D char * fgets (char * s, int n, FILE * fp); Legge caratteri dal flusso fp ponendoli nell array puntato da s, fino a che non ha letto n-1 caratteri oppure al raggiungimento di un carattere di ritorno a capo o della fine del file. L eventuale carattere di ritorno a capo è inserito nell array. Viene
3 Alcune funzioni della libreria standard del C 305 aggiunto il carattere terminatore di stringa ('\0'), dopo l'ultimo carattere scritto nell'array; in caso di errore o di raggiungimento della fine del file senza alcuna lettura viene ritornato NULL, altrimenti viene ritornato s. La funzione fa avanzare l'indicatore di posizione del file di un numero di caratteri pari a quelli effettivamente letti. D.1.4 Scrittura di stringhe D int puts (char * s); Scrive caratteri sullo standard output prendendoli dall array puntato da s, fino a che non trova il carattere terminatore di stringa ('\0'), che non viene scritto. A questo punto scrive un carattere di ritorno a capo. In caso di errore viene ritornato EOF, altrimenti restituisce 0. La funzione fa avanzare l'indicatore di posizione del file di un numero di caratteri pari a quelli effettivamente scritti. D int fputs (char * s, FILE * fp); Scrive caratteri sul flusso fp prendendoli dall array puntato da s, fino a che non trova il carattere terminatore di stringa ('\0'), che non viene scritto. Non aggiunge il carattere di ritorno a capo. In caso di errore viene ritornato EOF, altrimenti restituisce 0. La funzione fa avanzare l'indicatore di posizione del file di un numero di caratteri pari a quelli effettivamente scritti. D.1.5 Scrittura formattata D int printf (char * format, ); Consente la scrittura sullo standard output. printf è equivalente a fprintf (stdout, format,...). In caso di errore la funzione ritorna un numero negativo, altrimenti restituisce il numero di caratteri scritti. D int sprintf (char * s, char * format, ); Consente la scrittura formattata su una stringa. In caso di errore la funzione ritorna un numero negativo, altrimenti restituisce il numero di caratteri scritti. D int fprintf (FILE * fp, char * format, ); fprintf permette di scrivere sul flusso fp dei dati formattati seguendo le specifiche fornite nel secondo parametro. In caso di errore la funzione ritorna un numero negativo, altrimenti restituisce il numero di caratteri scritti. format è la stringa di formato e può contenere due tipi di oggetti : caratteri semplici, che sono semplicemente copiati sul flusso fp, e specificatori di conversione (inizianti con il carattere '%') che determinano come devono essere stampati gli argomenti
4 306 Appendice D successivi. La funzione ritorna il numero di caratteri scritti. La funzione fa avanzare l'indicatore di posizione del file di un numero di caratteri pari a quelli effettivamente scritti. Il formato degli specificatori di conversione per la printf è: % [flags] [minima_ampiezza] [precisione] [tipo_di_conversione] minima_ampiezza permette di specificare il numero minimo di caratteri che la stampa dell argomento deve occupare. Se il dato richiede meno caratteri, vengono aggiunti spazi sufficienti alla sinistra del dato per raggiungere l ampiezza specificata. Il flag '-' specifica che gli eventuali spazi devono essere aggiunti alla destra del dato (allineamento a sinistra). Il flag '+' specifica che i numeri positivi devono cominciare con il simbolo '+' che di default viene invece omesso, mentre con il flag ' ' (spazio) si lascia uno spazio bianco. precisione permette di specificare cose diverse a seconda del tipo di conversione e viene trattato quindi separatamente nella prossima tabella. Ha la forma di un numero preceduto dal carattere '.'. I campi minima_ampiezza e precisione possono consistere anche nel carattere '*', che sta ad indicare che il valore numerico da considerare è contenuto nel prossimo argomento. La Tabella D.1 specifica i tipi di conversione. D.1.6 Lettura formattata D int scanf (char * format, ); scanf è equivalente a fscanf (stdin, format,...). In caso di errore la funzione ritorna EOF, altrimenti restituisce il numero di dati letti e convertiti con successo. D int sscanf (char * s, char * format, ); Permette la lettura fromattata da una stringa.,...). In caso di errore la funzione ritorna EOF, altrimenti restituisce il numero di dati letti e convertiti con successo. D int fscanf (FILE * fp, char * format, ); fscanf permette di leggere dei caratteri dal flusso fp, di interpretarli seguendo le specifiche fornite nel secondo parametro e di memorizzare il risultato negli argomenti successivi.,...). In caso di errore la funzione ritorna EOF, altrimenti restituisce il numero di dati letti e convertiti con successo. format è la stringa di formato e può contenere tre tipi di oggetti : caratteri assimilabili allo spazio (spazio, tabulazione e ritorno a capo); caratteri semplici, che devono trovare una corrispondenza nel flusso in ingresso; e specificatori di conversione (inizianti con il
5 Alcune funzioni della libreria standard del C 307 carattere '%') che determinano come devono essere interpretati i caratteri in input e quali valori assegnare ai parametri successivi. Per tutti gli specificatori di conversione (eccetto 'c' e '[') sono automaticamente trascurati tutti i caratteri assimilabili allo spazio, presenti all inizio della stringa da leggere. I caratteri assimilabili allo spazio che si trovano all interno della stringa da leggere fungono da separatori: essi determinano la fine di una conversione e l inizio della successiva. Per gli specificatori di conversione 'c' e '[', non vengono trascurati i caratteri assimilabili allo spazio presenti all inizio nella stringa da leggere. Per ottenere un comportamento simile aquello degli altri specificatori di conversione, basta far precedere a 'c' e '[' un carattere assimilabile allo spazio bianco. Tabella D.1 d, u, o, X f E G c s Tipi di conversione per la funzione printf. L argomento è convertito (e stampato) come un intero con segno decimale (d), oppure decimale senza segno (u), ottale (o), esadecimale (X). Se il tipo di conversione è preceduto da una l il dato viene considerato di tipo (eventualmente unsigned) long, se da un h di tipo (unsigned) short. Il campo precisione indica il numero minimo di cifre da usare; se il dato richiede meno cifre, vengono aggiunti degli zeri sufficienti alla sinistra del dato per raggiungere la precisione specificata. L argomento (di tipo float o double) è convertito in notazione decimale nello stile [-]ddd.dddd dove il numero di cifre dopo la virgola (di default 6) può essere modificato usando il campo precisione. Se il tipo di conversione è preceduto da una l il dato viene considerato di tipo double, se da una L di tipo long double. L argomento (di tipo float o double) è convertito in notazione scientifica nello stile [-]d.dddde±dd dove il numero di cifre dopo la virgola (di default 6) può essere modificato usando il campo precisione. Se il tipo di conversione è preceduto da una l il dato viene considerato di tipo double, se da una L di tipo long double. L argomento (di tipo float o double) è convertito come in E se l esponente è minore di -4 o maggiore della precisione che in questo caso specifica il numero massimo di cifre significative da utilizzare. Se il tipo di conversione è preceduto da una l il dato viene considerato di tipo double, se da una L di tipo float double. L argomento di tipo char è stampato. L argomento è considerato essere una sequenza di caratteri. Vengono stampati il numero di caratteri specificati da precisione a meno che non si incontri precedentemente il carattere '\0' (terminatore della stringa). % Stampa il carattere %.
6 308 Appendice D La funzione ritorna il numero di oggetti assegnati, a meno che non incontri la fine del file prima di qualunque conversione, nel qual caso restituisce EOF. In caso di conflitto tra carattere da leggere e stringa di controllo, la funzione termina restituendo il numero di oggetti letti fino a quel momento ed il carattere che ha generato conflitto (ad esempio una lettera quando ci si aspetta un numero) è lasciato "non letto" sul flusso di input. La funzione fa avanzare l'indicatore di posizione del file di un numero di caratteri pari a quelli effettivamente letti. Il formato degli specificatori di conversione per la scanf è: % [*] [massima_ampiezza] [tipo_di_conversione] * è chiamato specificatore di soppressione dell assegnamento, e serve per specificare che il dato letto non deve essere assegnato a nessuno dei parametri ma solo consumato. massima_ampiezza permette di specificare il numero massimo di caratteri che si possono leggere per l oggetto in questione. La Tabella D.2 specifica i tipi di conversione. Alcuni esempi di conversione sono i seguenti: La stringa di formato % c (con lo spazio tra i caratteri '%' e 'c') consente di leggere un carattere, scartando tutti i caratteri assimilabili allo spazio presenti all inizio della stringa da leggere. La stringa di formato %s consente di leggere una stringa, purché essa non contenga caratteri assimilabili allo spazio. I caratteri assimilabili allo spazio agiscono da separatori e quindi, una stringa che ne contiene, viene spezzata in più stringhe. Per leggere una stringa che si suppone possa contenere caratteri assimilabili allo spazio, è meglio usare gets o fgets. D.1.7 Gestione degli errori nelle operazioni su file D int ferror (FILE * fp); Ritorna un numero diverso da zero quando si è verificato precedentemente un errore durante una operazione sul flusso fp, altrimenti ritorna zero. ferror non modifica lo stato dell indicatore di errore e pertanto chiamate ripetute a ferror segnalano la medesima condizione di errore. D int feof (FILE * fp); Ritorna un numero diverso da zero quando si è raggiunta la fine del file durante una operazione di lettura dal flusso fp, altrimenti ritorna zero. feof non modifica lo stato dell indicatore di errore e pertanto chiamate ripetute a feof segnalano la medesima condizione di errore.
7 Alcune funzioni della libreria standard del C 309 Tabella D.2 Tipi di conversione per la funzione scanf. d, u, o, X Legge un intero con segno decimale (d), oppure decimale senza segno (u), ottale (o), esadecimale (X). L argomento corrispondente deve essere l indirizzo di una variabile di tipo int. Se il tipo di conversione è preceduto da una l l argomento corrispondente deve essere l indirizzo di una variabile di tipo (eventualmente unsigned) long, se da un h di tipo (unsigned) short. f E G c s Sono tutti caratteri equivalenti. Legge un numero "reale" che può essere espresso sia in notazione decimale che scientifica. L argomento corrispondente deve essere l indirizzo di una variabile di tipo float. Se il tipo di conversione è preceduto da una l l argomento corrispondente deve essere l indirizzo di una variabile di tipo double, se da una L di tipo long double. Legge il prossimo carattere, anche se spazio. Se è preceduto da un valore di massima_ampiezza, allora vengono letti tanti caratteri quanti specificati e l argomento corrispondente deve essere l indirizzo di un array di caratteri, altrimenti l indirizzo di una variabile di tipo char. Legge una sequenza di caratteri finché non ha letto il numero di caratteri specificati massima_ampiezza o non trova un carattere assimilabile allo spazio (che viene considerato come terminatore di parola). L argomento corrispondente deve essere l indirizzo di un array di caratteri. Il carattere '\0' (terminatore della stringa) viene aggiunto nell array dopo l ultimo carattere letto. % Legge il carattere %. n [ L argomento corrispondente deve essere l indirizzo di una variabile di tipo int a cui viene assegnato il numero di caratteri letti fino a quel momento. L argomento corrispondente deve essere l indirizzo di un array di caratteri. Il carattere '[' è seguito da una lista di caratteri terminata da ']' che prende il nome di lista_di_scansione. Vengono letti dal flusso fp caratteri fino a che questi sono compresi tra quelli della lista_di_scansione. Se il primo carattere della lista è '^', vengono letti dal flusso caratteri fino a che questi non sono compresi tra quelli della lista di scansione. Altra condizione di terminazione è il raggiungimento del numero di caratteri specificato da massima_ampiezza o della fine del file. D void clearerr (FILE * fp); Assegna il valore falso agli indicatori di errore e raggiungimento della fine del file del flusso fp. Ciò avviene implicitamente anche quando viene aperto il file, o viene chiamata la funzione rewind.
8 310 Appendice D D.1.8 Chiusura dei file e svuotamento del buffer associato D int fclose (FILE * fp); Causa la scrittura dei dati ancora bufferizzati relativi al flusso fp e la chiusura del file stesso. Restituisce 0 in caso di successo, altrimenti ritorna EOF e setta la variabile globale errno ad un valore opportuno diverso da zero. È chiamata implicitamente dalla funzione exit per tutti i file aperti. D int fflush (FILE * fp); Causa la scrittura dei dati ancora bufferizzati relativi al flusso fp. Restituisce 0 in caso di successo, altrimenti ritorna EOF e setta la variabile globale errno ad un valore opportuno diverso da zero. D.1.9 Apertura dei file D FILE * fopen (const char * filename, const char * type); Apre il file di nome filename, associa al file un flusso e ritorna un puntatore alla struttura di tipo FILE che descrive tale flusso. In caso di fallimento dell operazione restituisce NULL e setta la variabile globale errno ad un valore opportuno diverso da zero. type è una stringa di caratteri che indica le modalità di accesso e può avere i seguenti valori: "r" "w" "a" "r+" "w+" "a+" apertura in lettura di un file esistente; l'indicatore di posizione del file è posto all inizio del file. creazione di un nuovo file in scrittura, o troncamento a zero di un file esistente; l'indicatore di posizione del file è posto all inizio del file. creazione o apertura di un file in scrittura, in modalità append; l'indicatore di posizione del file è posto un byte oltre la fine del file: tutte le operazioni di scrittura avvengono solo alla fine del file. apertura in lettura e scrittura di un file esistente; l'indicatore di posizione del file è posto all inizio del file. creazione di un nuovo file in lettura e scrittura, o troncamento a zero di un file esistente; l'indicatore di posizione del file è posto all inizio del file. creazione o apertura di un file in modalità append e lettura; l'indicatore di posizione del file è posto alla fine del file, ma resta tale (ignorando eventuali o fseek o simili) solo per le operazioni di scrittura. Queste modalità sono relative a file di testo. Se si vuole trattare con file binari bisogna aggiungere in fondo alla stringa una 'b' (ad es. "rb", "wb", "a+b", etc.).
9 Alcune funzioni della libreria standard del C 311 In una qualunque modalità append, a causa delle bufferizzazione, non è possibile effettuare operazioni di lettura e scrittura senza interporre tra loro una chiamata a fflush o fseek o rewind. D.1.10 Lettura e scrittura binaria D int fread (void * ptr, size_t size, int nelem, FILE * fp); Copia nell array puntato da ptr, nelem blocchi di dati binari dal flusso fp. Un blocco di dati è una sequenza di size byte. La funzione termina dopo aver letto un numero di byte pari a quello specificato, quando incontra la fine del file, oppure in caso di errore di lettura. Restituisce il numero di blocchi effettivamente letti (permettendo di verificare la correttezza dell esecuzione). La funzione fa avanzare l'indicatore di posizione del file di un numero di byte pari a quelli effettivamente letti. D int fwrite (void * ptr, size_t size, int nelem, FILE * fp); Scrive nel flusso fp, nelem blocchi di dati binari dall array puntato da ptr. Un blocco di dati è una sequenza di size byte. La funzione termina dopo aver scritto un numero di byte pari a quello specificato oppure in caso di errore di scrittura. Restituisce il numero di blocchi effettivamente scritti (permettendo di verificare la correttezza dell esecuzione). La funzione fa avanzare l'indicatore di posizione del file di un numero di byte pari a quelli effettivamente scritti. D.1.11 Posizionamento all interno dei file D int fseek (FILE * fp, long offset, int ptrname); Sposta l indicatore di posizione del file, relativo al flusso fp, che indica dove leggere o scrivere con la prossima operazione. La posizione è specificata mediante un offset (in byte) dalla posizione indicata da ptrname: SEEK_SET indica che lo spostamento è relativo all inizio del file (e quindi offset deve essere un numero maggiore o uguale a zero); SEEK_CUR indica che lo spostamento è relativo alla posizione corrente; SEEK_END indica che lo spostamento è relativo alla fine del file (e quindi offset deve essere un numero minore o uguale a zero). In caso di successo ritorna 0 e assegna il valore falso all indicatore di fine-file del flusso fp. In caso di errore, cioè di impossibilità a posizionarsi dove richiesto, restituisce -1 e setta la variabile globale errno ad un valore opportuno diverso da zero. Utilizzando SEEK_SET, un offset pari a 0 sposta l indicatore sul primo byte del file. Utilizzando SEEK_END, un offset pari a -1 sposta l indicatore sull ultimo byte del file, mentre un un offset pari a 0 sposta l indicatore un byte oltre la fine del file (append).
10 312 Appendice D D long ftell (FILE * fp); Restituisce l offset (in byte) dell indicatore di posizione del file relativo al flusso fp, a partire dall inizio. Ovvero la dimensione del file, in byte. In caso di errore restituisce -1 e setta la variabile globale errno ad un valore opportuno diverso da zero. D void rewind(file * fp); Sposta l indicatore di posizione del file, relativo al flusso fp, in posizione 0. Assegna il valore falso agli indicatori di errore e di fine-file, del flusso fp. In caso di errore setta la variabile globale errno ad un valore opportuno diverso da zero. D.1.12 Cancellazione di file D int remove (const char * filename); Cancella il file identificato da filename. Se si tenta di cancellare un file aperto, il risultato dipende dall implementazione. In caso di successo restituisce 0, altrimenti ritorna -1 e setta la variabile globale errno ad un valore opportuno diverso da zero. D.1.13 Ridenominazione di file D int rename (const char * old_name, const char * new_name); Modifica il nome del file identificato da old_name in new_name. Se si tenta di cambiare il nome di un file aperto o new_name è un nome già usato da un altro file, il risultato dipende dall implementazione. In caso di successo restituisce 0, altrimenti ritorna -1 e setta la variabile globale errno ad un valore opportuno diverso da zero. D.2 Gestione della memoria La dichiarazione delle seguenti funzioni si trova nel file stdlib.h. D.2.1 Allocazione e deallocazione dinamica di memoria D void * malloc ( size_t size); Riserva size byte contigui in memoria e ritorna un puntatore al primo byte dell area riservata. Restituisce 0 (NULL) in caso di fallimento dell allocazione. La memoria riservata da malloc non viene inizializzata in nessun modo.
11 Alcune funzioni della libreria standard del C 313 D void free (void * ptr); Rende nuovamente libera l area di memoria precedentemente allocata in modo dinamico e puntata da ptr. Chiamare la funzione free su un area di memoria non precedente allocata o già deallocata da una chiamata precedente, porta a un risultato indefinito. D void * calloc (size_t nelem, size_t size); Riserva size*nelem byte contigui in memoria e ritorna un puntatore al primo byte dell area riservata. Restituisce 0 (NULL) in caso di fallimento dell allocazione. calloc inizializza a zero tutti i bit dell area riservata. D.3 Gestione delle stringhe La dichiarazione delle seguenti funzioni si trova nel file string.h. Una stringa è una sequenza di caratteri terminata dal carattere '\0'. D.3.1 Concatenazione di stringhe D char * strcat (char * s1, const char * s2); Appende una copia di s2 alla fine di s1. Il carattere terminatore di s1 viene sovrascritto dal primo carattere di s2. È compito del programmatore garantire che in s1 ci sia abbastanza spazio per l operazione. La funzione ritorna s1. D char * strncat (char * s1, const char * s2, size_t n); Appende al massimo n caratteri (più il terminatore di stringa) da s2 alla fine di s1. Il carattere terminatore di s1 viene sovrascritto dal primo carattere di s2. È compito del programmatore garantire che in s1 ci sia abbastanza spazio per l operazione. La funzione ritorna s1. D.3.2 Copia di stringhe D char * strcpy (char * s1, const char * s2); Copia s2 in s1. È compito del programmatore garantire che in s1 ci sia abbastanza spazio per l operazione. La funzione ritorna s1. D char * strncpy (char * s1, const char * s2, size_t n); Copia al massimo n caratteri da s2 in s1. Se s2 ha lunghezza minore di n vengono aggiunti caratteri nulli a s1 fino a raggiungere n caratteri. Se s2 ha lunghezza
12 314 Appendice D maggiore di n, s1 risulterà non terminata. È compito del programmatore garantire che in s1 ci sia abbastanza spazio per l operazione. La funzione ritorna s1 che può essere come detto anche una stringa non terminata. D.3.3 Confronto di stringhe D int strcmp (const char * s1, const char * s2); Confronta le stringhe s1 e s2. La funzione restituisce 0 se le stringhe sono uguali; un numero minore di 0 se s1 precede in ordine alfabetico s2; un numero maggiore di 0 se s1 segue in ordine alfabetico s2. D int strncmp (const char * s1, const char * s2, size_t n); Confronta le stringhe s1 e s2, limitandosi ai primi n caratteri. La funzione restituisce 0 se le stringhe sono uguali; un numero minore di 0 se s1 precede in ordine alfabetico s2; un numero maggiore di 0 se s1 segue in ordine alfabetico s2. D.3.4 Lunghezza di una stringa D int strlen (const char * s1); Restituisce il numero di caratteri della stringa (terminatore escluso). D.4 Varie D.4.1 Ora e data La dichiarazione delle seguenti funzioni e strutture si trova nel file time.h. D time_t time (time_t * timer); Restituisce (ed assegna a timer se non è un puntatore nullo) il tempo assoluto. Il formato non è specificato (spesso viene usato il numero di secondi passati dal 1 gennaio 1970), ma viene fornita la funzione localtime che permette di interpretarlo. D struct tm * localtime (const time_t * timer); Converte il tempo assoluto puntato da timer (nello stesso formato restituito da time) e restituisce il puntatore ad una variabile strutturata di tipo tm (Attenzione, chiamate successive possono operare sulla stessa variabile di tipo tm che viene riscritta ad ogni chiamata). La struttura tm ha come minimo i seguenti campi (ne possono esistere altri):
13 Alcune funzioni della libreria standard del C 315 struct tm { /* eventuali altri campi */ int tm_sec; /* secondi */ int tm_min; /* minuti */ int tm_hour; /* ore /* int tm_mday; /* giorno del mese [1..31] */ int tm_mon; /* mese da gennaio [0..11] */ int tm_year; /* anni dal 1900 [0.. ]*/ int tm_wday; /*giorno dalla domenica [0..6] */ int tm_yday; /* giorno dal primo gennaio: [0..365] */ int tm_isdst; /* segnalatore di modifica nell'orario locale (ad esempio ora legale)*/ }; D.4.2 Generazione di numeri casuali La dichiarazione delle seguenti funzioni si trova nel file stdlib.h. D int rand (void); È un generatore di numeri pseudo-casuali. Restituisce un valore intero nell intervallo [0..RAND_MAX]. Chiamate successive restituiscono numeri differenti. D void srand (unsigned int seme); Permette di scegliere il valore iniziale per la generazione di numeri casuali da parte di rand. Usando uno stesso seme, rand restituisce sequenze identiche di numeri. Un metodo comune di inizializzazione del seme è basato sulla chiamata della funzione time. D.4.3 Uscita da un programma La dichiarazione della exit si trova nel file stdlib.h. D void exit (int status); Causa la chiusura di tutti i file aperti e quindi la conclusione del programma restituendo all ambiente il valore passato in status.
Gestione dei File. Credits Prof. Campi
Gestione dei File Credits Prof. Campi 1 Perché i file? Sono strutture dati persistenti Sono solitamente memorizzati sui dischi Si usano dall'interno dei programmi Realizzano la persistenza dei dati cioè
DettagliIl linguaggio C. Breve panoramica su stdio.h
Il linguaggio C Breve panoramica su stdio.h 1 Input/Output: stdio.h Contiene definizioni di costanti legate all I/O es. EOF (end of file) #define EOF (-1) valore restituito alla fine di un file Contiene
DettagliStreams e disk files
Streams e disk files Streams 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: Testo: sequenza
DettagliLaboratorio di Programmazione
Laboratorio di Programmazione (Laurea triennale in matematica) Lezione 26 Sommario: Gestione dei file in C. File ad accesso sequenziale: apertura, chiusura, lettura e scrittura. File binari. Gestione files
DettagliCapitolo 5 -- Stevens
Libreria standard di I/O Capitolo 5 -- Stevens Libreria standard di I/O rientra nello standard ANSI C perché è stata implementata su molti sistemi operativi oltre che su UNIX le sue funzioni individuano
DettagliGESTIONE DEI FILE IN C. Docente: Giorgio Giacinto AA 2008/2009
Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2
DettagliGestione dei file in C
Gestione dei file in C Fondamenti di Informatica Che cos è un file e a cosa serve? Memoria di massa vs memoria centrale q La memoria di massa (disco fisso) è un dispositivo di memorizzazione generalmente
DettagliFiles in C endofile
Files in C Il C vede i file semplicemente come un flusso (stream) sequenziale di bytes terminati da un marcatore speciale che determina la fine del file (end-of-file). 0 1 2 3 4... endofile A differenza
DettagliI files in C. A cura del prof. Ghezzi
I files in C A cura del prof. Ghezzi 1 Perchè i files? Realizzano la persistenza dei dati dati che sopravvivono all esecuzione del programma Sono delle strutture di dati sequenziali 2 Files e S.O. I files
DettagliGestione dei file in C
Gestione dei file in C Fondamenti di Informatica Che cos è un file e a cosa serve? Memoria di massa vs memoria centrale q La memoria di massa (disco fisso) è un dispositivo di memorizzazione generalmente
DettagliI files (archivi) Il C definisce in stdio.h tre file aperti automaticamente: stdin, stdout e stderr.! Sono ad accesso sequenziale diretto
C I files di dati I files (archivi) Files di programmi sono solo gestiti dal compilatore C Files di dati Possono essere creati, aggiornati, letti, scritti da programmi C Servono per conservare dati su
DettagliInput/Output. Lettura e scrittura Caratteri e Stringhe: Terminale e file. Input/output. caratteri stringhe formattato ascii binari
Input/Output Lettura e scrittura Caratteri e Stringhe: Terminale e file Input/output console file caratteri stringhe formattato ascii binari Linguaggio ANSI C Input/Output - 1 La libreria standard del
DettagliPerchè i files? Realizzano la persistenza dei dati. Sono delle strutture di dati sequenziali. dati che sopravvivono all esecuzione del programma
Perchè i files? Realizzano la persistenza dei dati dati che sopravvivono all esecuzione del programma Sono delle strutture di dati sequenziali Files e S.O. I files sono gestiti dal S.O. e resi visibili
DettagliLinguaggio C: i file
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica A - GES Prof. Plebani A.A. 2006/2007 Linguaggio C: i file La presente dispensa e da utilizzarsi ai soli fini didattici previa
DettagliIntroduzione al C. Stream e disk file
Introduzione al C Stream e disk file Stream Un canale è una sequenza di byte di dati Sorgente o destinazione di dati che possono essere associati ad un disco o ad altre periferiche Due tipi di stream:
DettagliLinguaggio 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
DettagliLinguaggio 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
DettagliInput / Output. Come già detto, input e output sono realizzati in C da funzioni di stdio.h all'interno della libreria standard
Stdio.h Input / Output Come già detto, input e output sono realizzati in C da funzioni di stdio.h all'interno della libreria standard Sia i file che i dispositivi (tastiera, schermo...) sono visti come
DettagliFile binari e file di testo
I file File binari e file di testo distinzione tra file binari file di testo si possono usare funzioni diverse per la gestione di tipi di file diversi Programmazione Gestione dei file 2 File binari e file
DettagliInformatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter
Informatica B a.a 2005/06 (Meccanici 4 squadra) Scaglione: da PO a ZZZZ PhD. Ing. Michele Folgheraiter Ripasso Liste: typedef struct EL{TipoElemento Info; struct EL *Prox;} ElemLista; typedef ElemLista
DettagliAllocazione dinamica della memoria
Allocazione dinamica della memoria Violetta Lonati Università degli studi di Milano Dipartimento di Informatica Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Violetta Lonati
DettagliLezione 11: Liste a Puntatori e Input/Output
Lezione 11: Liste a Puntatori e Input/Output Vittorio Scarano Laboratorio di Informatica I Corso di Laurea in Informatica Università degli Studi di Salerno Struttura della lezione Richiamo: strutture (struct)
DettagliInput / Output. Come già detto, input e output sono realizzati in C da funzioni di stdio.h all'interno della libreria standard
Stdio.h Input / Output Come già detto, input e output sono realizzati in C da funzioni di stdio.h all'interno della libreria standard Sia i file che i dispositivi (tastiera, schermo...) sono visti come
Dettaglipuntatori Lab. Calc. AA 2006/07 1
puntatori Lab. Calc. AA 2006/07 1 Attributi di un oggetto nome o identificatore; tipo; valore (o valori); indirizzo; Lab. Calc. AA 2006/07 2 Indirizzo Consideriamo la dichiarazione con inizializzazione:
DettagliInput/output console file caratteri stringhe formattato ascii binari
Input/output Input/Output Input/output console file caratteri stringhe formattato ascii binari La libreria standard del C La libreria standard del C è in realtà un insieme di librerie Per usare una libreria,
DettagliSettimana n.12. Obiettivi File!di!testo. Contenuti Concetto!di!file!e!funzioni! fopen/fclose Funzioni!fgets+sscanf Approfondimenti!su!printf! e!
Settimana n.12 Obiettivi File!di!testo Contenuti Concetto!di!file!e!funzioni! fopen/fclose Funzioni!fgets+sscanf Approfondimenti!su!printf! e!scanf 437 Files Vista d insieme dei formati di file File File
DettagliInput/output da file I/O ANSI e I/O UNIX FLUSSI E FILE FLUSSI FLUSSI di TESTO FLUSSI BINARI FILE
Input/output da file Il linguaggio C non contiene istruzioni di I/O, in quanto tali operazioni vengono eseguite tramite funzioni di libreria standard. Questo approccio rende estremamente flessibile e potente
DettagliGESTIONE DEI FILE. File come tipo di dati
GESTIONE DEI FILE File come tipo di dati Nel linguaggio C, i file vengono trattati come un tipo di dati derivato, cioè ottenuto dai tipi elementari esistenti. In pratica, quando si apre e si gestisce un
DettagliLezione 22: Input/Output e Files
Lezione 22: Input/Output e Files Vittorio Scarano Laboratorio di Informatica I Corso di Laurea in Informatica Università di Salerno Struttura della lezione Esami: date e modalità Funzioni di libreria standard
DettagliScrittura formattata - printf
Esercizi su Input/Output con formato FormattedIO 1 Scrittura formattata - printf Funzione printf int printf ( , ) La funzione restituisce un valore intero uguale ai caratteri
DettagliDIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. File. Marco D. Santambrogio Ver. aggiornata al 6 Marzo 2016
File Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 6 Marzo 2016 Obiettivi Il salvataggio dei dati File File e OS File in C 2 3 I programmi che abbiamo considerato finora. Perdono
DettagliDIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. File. Marco D. Santambrogio Ver. aggiornata al 21 Maggio 2014
File Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 21 Maggio 2014 Obiettivi Il salvataggio dei dati File File e OS File in C 2 3 I programmi che abbiamo considerato finora. Perdono
DettagliEsercitazioni di Fondamenti di Informatica - Lez. 9 4/12/2018
Esercitazioni di Fondamenti di Informatica - Lez. 9 /1/018 Esercizi sulla gestione dei file in C Il codice degli esercizi e contenuto nella cartella parte1 1. Creare una funzione C che legga tutto cio
DettagliINPUT E OUTPUT DI VALORI NUMERICI
INPUT E OUTPUT DI VALORI NUMERICI FUNZIONI DI I/O PER NUMERI Per utilizzare le funzioni di Input/Output bisogna includere il file di intestazione (header file) denominato contiene la
DettagliLa gestione dei file in C
Gestione dei file La gestione dei file in C Il file è un astrazione molto ampia nella descrizione di un sistema informatico nastro di I/O supporto di comunicazione macchina/ambiente di ogni tipo (sensori,
DettagliDIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. File. Marco D. Santambrogio Ver. aggiornata al 15 Maggio 2015
File Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 15 Maggio 2015 2nda prova in itinere Era il 21 Maggio 2 2nda prova in itinere Era il 21 Maggio Spostata (da 3 settimane) al 22
DettagliIngresso ed Uscita in C. Informatica 1 / 15
Ingresso ed Uscita in C Informatica 1 / 15 Input e Output in C Linguaggio C: progettato per essere semplice e con poche istruzioni Non esistono istruzioni di ingresso / uscita (I/O)!!! Ingresso ed uscita
DettagliSuggerimenti, note utili ed errori comuni. Fondamenti di informatica T
Suggerimenti, note utili ed errori comuni Fondamenti di informatica T printf, scanf e stringhe di formato La lettura e scrittura di variabili in formato testo sono realizzate tramite printf e scanf sfruttando
DettagliGestione dei file. Linguaggio ANSI C Input/Output - 13
Gestione dei file Necessità di persistenza dei file archiviare i file su memoria di massa. Un file è una astrazione fornita dal sistema operativo, il cui scopo è consentire la memorizzazione di informazioni
DettagliIl linguaggio C. Puntatori e dintorni
Il linguaggio C Puntatori e dintorni 1 Puntatori : idea di base In C è possibile conoscere e denotare l indirizzo della cella di memoria in cui è memorizzata una variabile (il puntatore) es : int a = 50;
DettagliIntroduzione al C Lez. 4
Introduzione al C Lez. 4 Allocazione Dinamica della memoria http://www.di.unipi.it/~rossano/algo1/lez4.pdf Allocazione dinamica memoria In C la memoria può essere anche gestita in modo dinamico, attraverso
DettagliLaboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 5 31/10/2013
Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 5 31/10/2013 Original work Copyright Sara Migliorini, University of Verona Modifications Copyright Damiano Macedonio, University
DettagliUna stringa di caratteri in C è un array di caratteri terminato dal carattere '\0' 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ù N-1
DettagliCaratteri e stringhe
Caratteri e stringhe Caratteri Dato che un computer può memorizzare esclusivamente sequenze di bit, per memorizzare un carattere (e quindi testi) è necessario stabilire una convenzione che associa a un
DettagliCorso di Informatica A.A
Corso di Informatica A.A. 2009-2010 Lezione 13 Corso di Informatica 2009-2010 Lezione 13 1 Input/output da file Stream Si definisce stream una sequenza di bytes di dati che può essere in ingresso (input
DettagliGestione dei file. Stefano Ferrari. Università degli Studi di Milano Programmazione. anno accademico
Gestione dei file Stefano Ferrari Università degli Studi di Milano stefano.ferrari@unimi.it Programmazione anno accademico 2016 2017 Gli stream Si dice stream qualsiasi sorgente di dati in ingresso e qualsiasi
DettagliLaboratorio di Sistemi Operativi Marzo-Giugno 2008 Matricole congrue 0 mod 3
Marzo-Giugno 2008 Matricole congrue 0 mod 3 Libreria standard di I/O Libreria standard di I/O Permette di fare I/O senza doversi preoccupare di problematiche di bufferizzazione Definizione del buffer Taglia
DettagliIntroduzione al linguaggio C Primi programmi
Introduzione al linguaggio C Primi programmi Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica
DettagliLaboratorio di Sistemi Operativi primavera 2009
primavera 2009 Libreria standard di I/O Libreria standard di I/O rientra nello standard ANSI C perché è stata implementata su molti sistemi operativi oltre che su UNIX le sue funzioni individuano il file
DettagliInput / Output. Come già detto, input e output sono realizzati in C da funzioni di stdio.h all'interno della libreria standard
Stdio.h Input / Output Come già detto, input e output sono realizzati in C da funzioni di stdio.h all'interno della libreria standard Sia i file che i dispositivi (tastiera, schermo...) sono visti come
DettagliFILE: tipo operazione Istruì. prototipo esempi lettura di un carattere fgetc Int fgetc(file *flusso) Vedi sotto
FILE: tipo operazione Istruì. prototipo esempi lettura di un carattere fgetc Int fgetc(file *flusso) Vedi sotto alla volta Scrittura di un fputc Int fputc(int ch, FILE *flusso); carattere alla volta Lettura
DettagliLezione 19 e Allocazione dinamica della memoria - Direttive al preprocessore - Libreria standard - Gestione delle stringhe
Lezione 19 e 20 - Allocazione dinamica della memoria - Direttive al preprocessore - Libreria standard - Gestione delle stringhe Valentina Ciriani (2005-2008) Laboratorio di programmazione Valentina Ciriani
DettagliGestione dinamica della memoria
Programmazione M-Z Ingegneria e Scienze Informatiche - Cesena A.A. 2016-2017 Gestione dinamica della memoria Pietro Di Lena - pietro.dilena@unibo.it A pessimistic programmer sees the array as half empty.
DettagliIngresso ed Uscita in C. Luca Abeni
Ingresso ed Uscita in C Luca Abeni Input e Output in C Linguaggio C: progettato per essere semplice e con poche istruzioni Non esistono neanche istruzioni di ingresso / uscita (I/O)!!! Ingresso ed uscita
DettagliCorso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Introduzione al C Unità 9 File
Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Introduzione al C Unità 9 File D. Bloisi, A. Pennisi, S. Peluso, S. Salza, C. Ciccotelli Sommario Input/Output
Dettaglicaratteri, immagini, suoni, ecc.
Il linguaggio C Input e output I flussi di I/O L uso di buffer Apertura e chiusura di file Lettura e scrittura di dati La selezione di un metodo di I/O I/O non bufferizzato L accesso diretto a file Input
DettagliEsercizi. I File ed il C
Politecnico di Milano Esercizi File di testo,, file binari I File ed il C Insieme omogeneo di dati, memorizzato su disco e caratterizzato da un nome La lunghezza di un file non è fissata a priori Astrazione
DettagliLa gestione dell'errore
La gestione dell'errore Esiste una variabile globale intera, definita nell'header errno.h che viene settata nel caso in cui una chiamata di sistema non possa eseguire correttamente il suo compito. Tale
DettagliIl 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
DettagliLIBRERIE STANDARD in C Le librerie standard
LIBRERIE STANDARD in C La libreria standard del C è in realtà un insieme di librerie Per usare una libreria, non occorre inserirla esplicitamente nel progetto: ogni ambiente di sviluppo sa già dove cercarle
DettagliIntroduzione al C Lez. 4. Allocazione Dinamica della memoria
Introduzione al C Lez. 4 Allocazione Dinamica della memoria Allocazione dinamica memoria In C la memoria può essere anche gestita in modo dinamico, attraverso l allocazione esplicita di blocchi di memoria
DettagliLIBRERIE STANDARD in C
LIBRERIE STANDARD in C La libreria standard del C è in realtà un insieme di librerie Per usare una libreria, non occorre inserirla esplicitamente nel progetto: ogni ambiente di sviluppo sa già dove cercarle
DettagliInput/Output di numeri
Input/Output di numeri I/O di numeri Per utilizzare le funzioni di I/O occorre include il file di intestazione (o file header) stdio.h utilizzando all inizio del sorgente la direttiva #include
DettagliLIBRERIE STANDARD in C. LIBRERIE STANDARD in C
LIBRERIE STANDARD in C La libreria standard del C è in realtà un insieme di librerie Per usare una libreria, non occorre inserirla esplicitamente nel progetto: ogni ambiente di sviluppo sa già dove cercarle
DettagliJAVA. import java.util.*; #include <stdio.h> public static class test { int variable; private int variable; int main (int argc, char *argv[]) {
JAVA C import javautil*; public static class test { private int variable; public void main (String[] args) { variable = 0; Systemoutprintln( Variable is: + variable); #include int variable; int
DettagliPrimi programmi in C
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica In breve Uso del compilatore gcc Struttura di un programma
DettagliUso avanzato dei puntatori Allocazione dinamica della memoria
Uso avanzato dei puntatori Allocazione dinamica della memoria Violetta Lonati Università degli studi di Milano Dipartimento di Informatica Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica
DettagliI File. Il file e` l'unita` logica di memorizzazione dei dati su memoria di massa.
I File Il file e` l'unita` logica di memorizzazione dei dati su memoria di massa. Consente una memorizzazione persistente dei dati, non limitata dalle dimensioni della memoria centrale. Generalmente un
DettagliCaratteri e stringhe
Caratteri e stringhe Caratteri Dato che un computer può memorizzare esclusivamente sequenze di bit, per memorizzare un carattere (e quindi testi) è necessario stabilire una convenzione che associa a un
DettagliLe librerie standard. ! La libreria standard del C è in realtà un insieme di librerie
! La libreria standard del C è in realtà un insieme di librerie! Per usare una libreria, non occorre inse -rirla esplicitamente nel progetto: ogni ambiente di sviluppo sa già dove cercarle! Ogni file sorgente
DettagliDOTT. ING. LEONARDO RIGUTINI DIPARTIMENTO INGEGNERIA DELL INFORMAZIONE UNIVERSITÀ DI SIENA VIA ROMA 56 53100 SIENA UFF. 0577234850-7102 RIGUTINI@DII
Gestione dei files DOTT. ING. LEONARDO RIGUTINI DIPARTIMENTO INGEGNERIA DELL INFORMAZIONE UNIVERSITÀ DI SIENA VIA ROMA 56 53100 SIENA UFF. 0577234850-7102 RIGUTINI@DII.UNISI.IT HTTP://WWW.DII.UNISI.IT/~RIGUTINI/
DettagliApprofondimento : printf
Approfondimento : printf La funzione printf : stampa su standard input (video) dati complessi ha un formato articolato, molto potente ma spesso poco chiaro ha un numero di opzioni utili e poco conosciute
DettagliOperazioni su file di caratteri
Operazioni su file di caratteri Apertura fopen Chiusura fclose Scrittura fprintf Lettura fscanf Controllo fine file feof Prof. E. Occhiuto INFORMATICA 242AA a.a. 2010/11 pag. 1 Apertura di un file: Si
DettagliFormattazione avanzata. Modificatori di formato in output Modificatori di formato in input Stream predefiniti
I/O Avanzato e File Formattazione avanzata Modificatori di formato in output Modificatori di formato in input Stream predefiniti 2 Formattazione avanzata Formattazione dell output L output (su schermo
DettagliStringhe in C. Luca Abeni. Informatica Luca Abeni 1 / 10
Stringhe in C Luca Abeni Informatica Luca Abeni 1 / 10 Stringhe in C Stringhe: tipo di dato strutturato Sequenze di caratteri Linguaggio C: progettato per la semplicità No supporto nativo per le stringhe
DettagliIntroduzione. L elaborazione dei files in C. Elaborazione dei files (1) Elaborazione dei files (2) D.D. cap. 11+ pp K.P. pp.
Introduzione L elaborazione dei files in C D.D. cap. 11+ pp. 569-572 K.P. pp. 581-583 La memorizzazione dei dati nelle variabili e nei vettori è temporanea: tutti quei dati andranno persi quando il programma
DettagliInput/Output su File
Input/Output su File Premessa importante Queste dispense si intendono unicamente come riferimento rapido per consultare il significato e I prototipi delle funzioni per l'accesso ai file. Per avere esempi
DettagliIndice. La gestione dei file in C e gli stream. Apertura e chiusura di un file. Operazioni sui file. Accesso sequenziale e non sequenziale
File in C Indice La gestione dei file in C e gli stream Apertura e chiusura di un file Operazioni sui file Accesso sequenziale e non sequenziale Gestione dei file in C In C all interno della standard library
DettagliFunzioni 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
DettagliDIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. File. Marco D. Santambrogio Ver. aggiornata al 15 Maggio 2013
File Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 15 Maggio 2013 Obiettivi Alcuni problemi aperti Il main() Allocazione dinamica della memoria Il salvataggio dei dati File File
DettagliLinguaggio C: Stringhe Valeria Cardellini
Linguaggio C: Stringhe Valeria Cardellini Corso di Calcolatori Elettronici A.A. 2018/19 Università degli Studi di Roma Tor Vergata Dipartimento di Ingegneria Civile e Ingegneria Informatica Argomenti q
DettagliLaboratorio di Informatica Ingegneria Clinica Lezione 30/11/2011
Laboratorio di Informatica Ingegneria Clinica Lezione 30/11/2011 Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via del Policlinico, 147 00161 Roma I/O in C Il sistema di I/O del C è una interfaccia uniforme
DettagliLezione V Fondamenti di Ingresso/Uscita
Programmazione e Laboratorio di Programmazione Lezione V Fondamenti di Ingresso/Uscita Programmazione e Laboratorio di Programmazione: Fondamenti di Ingresso/Uscita 1 Flussi standard di I/O Standard streams:
DettagliFormattazione avanzata. I/O Avanzato e File. Formattazione dell output. Formattazione avanzata. Forma completa degli specificatori
Formattazione avanzata Modificatori di o in output Modificatori di o in input Stream predefiniti I/O Avanzato e File 2 Formattazione dell output Formattazione avanzata L output (su schermo o su file) viene
DettagliCompendio sottoinsieme del C++ a comune col C. (Libreria standard, Input/Output, Costanti, Dichiarazioni e typedef, Memoria Dinamica)
Compendio sottoinsieme del C++ a comune col C (Libreria standard, Input/Output, Costanti, Dichiarazioni e typedef, Memoria Dinamica) Librerie 1/2 Il solo insieme di istruzioni di un linguaggio di programmazione
DettagliLinguaggio C. Vettori, Puntatori e Funzioni Stringhe. Università degli Studi di Brescia. Prof. Massimiliano Giacomin
Linguaggio C Vettori, Puntatori e Funzioni Stringhe Università degli Studi di Brescia Prof. Massimiliano Giacomin SCHEMA DELLA LEZIONE RELAZIONE TRA VETTORI E PUNTATORI (e le stringhe letterali come caso
DettagliDati aggregati. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica - in breve: Definizione di tipi Array Stringhe Strutture
DettagliSOMMARIO SU LETTURA E SCRITTURA (I/O) DEGLI STANDARD FILES
SOMMARIO SU LETTURA E SCRITTURA (I/O) DEGLI STANDARD FILES Con conversione di formato: int scanf (const char *format,... ) /* ritorna il numero di argomenti assegnati con successo altrimenti EOF se fine
DettagliI CARATTERI E LE STRINGHE
I CARATTERI E LE STRINGHE IL CODICE ASCII Per memorizzare i simboli grafici corrispondenti ai caratteri bisogna associare un numero intero a ciascuno di essi Il codice ASCII / æski/ (American Standard
DettagliCorso di Fondamenti di Programmazione canale E-O. Introduzione. Elaborazione dei files (2)
Corso di Fondamenti di Programmazione canale E-O Tiziana Calamoneri L elaborazione dei files in C DD, Cap. 11 + pp. 569-572 KP, pp. 581-583 Introduzione La memorizzazione dei dati nelle variabili e nei
DettagliSTRINGHE: 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ù
DettagliIntroduzione al linguaggio C Dati aggregati
Introduzione al linguaggio C Dati aggregati Violetta Lonati Università degli studi di Milano Dipartimento di Informatica Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica 5 ottobre
DettagliStandard I/O. Franco Maria Nardini
Standard I/O Franco Maria Nardini Standard I/O Library Standard I/O Library Definita da ISO C Standard I/O Library Definita da ISO C implementata non solo in sistemi operativi UNIX Standard I/O Library
DettagliIndice. La gestione dei file in C e gli stream. Apertura e chiusura di un file. Operazioni sui file. Accesso sequenziale e non sequenziale
File in C Indice La gestione dei file in C e gli stream Apertura e chiusura di un file Operazioni sui file Accesso sequenziale e non sequenziale La gestione del buffer Gestione dei file in C In C all interno
DettagliCARATTERI E STRINGHE Caratteri e stringhe Funzioni della libreria standard I/O Funzioni della libreria di gestione delle stringhe
CARATTERI E STRINGHE Caratteri e stringhe Funzioni della libreria standard I/O Funzioni della libreria di gestione delle stringhe Caratteri e stringhe Caratteri Sono i blocchi costitutivi di ogni programma:
Dettagli