Sei sulla pagina 1di 6

stdio.

h - Wikipedia

http://it.wikipedia.org/wiki/Stdio.h

stdio.h
Da Wikipedia, l'enciclopedia libera.

stdio.h, che sta per "standard input-output header", l'header file della libreria standard del C che contiene definizioni di macro, costanti e dichiarazioni di funzioni e tipi usati per le varie operazioni di input/output. compatibile con il C++, anche se quest'ultimo linguaggio di programmazione usa anche l'header file cstdio, che aggiunge alcune funzioni sovraccariche per lavorare anche con le variabili long.

Libreria standard del C++

Libreria standard del C assert.h ctype.h errno.h float.h math.h stdio.h stdlib.h string.h time.h

Le funzioni dichiarate in stdio.h sono molto famose, poich, essendo parte della libreria standard del C, il loro funzionamento garantito su ogni piattaforma per la quale esista un compilatore C. Le applicazioni studiate per una particolare piattaforma, per, potrebbero utilizzare direttamente le chiamate di I/O del sistema operativo, piuttosto che le funzioni di stdio.h.
Indice 1 2 3 4 5 6 Esempio di utilizzo Funzioni Costanti Variabili Tipi di dato Altri progetti

Esempio di utilizzo
Tutte le funzioni, in C e nei suoi derivati, sono dichiarate negli header file. Il programmatore, perci, deve includere l'header stdio.h nel codice sorgente per poter utilizzare le funzioni dichiarate al suo interno.

1 di 6

30/06/2010 12:46

stdio.h - Wikipedia

http://it.wikipedia.org/wiki/Stdio.h

#include <stdio.h> int main(void) { int c; while ((c = getchar()) != EOF) putchar(c); putchar('\n'); return 0; }

Il programma qui sopra legge tutto l'input dallo standard input e lo visualizza sullo standard output , carattere per carattere.

Funzioni
Le funzioni dichiarate in stdio.h possono generalmente essere divise in due categorie: le funzioni per la manipolazione di file e quelle per la manipolazione dell'input/output. Nome Descrizione

Funzioni per la manipolazione di file


fclose fopen, freopen, fdopen remove rename

Chiude il file associato al valore

FILE *

passatole.

Apre un file in lettura o scrittura. Rimuove un file. Rinomina un file.


SEEK_SET)

rewind

Agisce come se fosse stata chiamata la funzione fseek(stream, sullo stream passatole; in aggiunta, cancella il suo indicatore d'errore.

0L,

tmpfile

Crea ed apre un file temporaneo, che viene poi cancellato e chiuso con fclose().

Funzioni per la manipolazione dell'input/output


clearerr

Cancella l'indicatore di fine file e quello d'errore per un dato stream. Controlla se l'indicatore di fine file stato settato per un dato stream.

feof

2 di 6

30/06/2010 12:46

stdio.h - Wikipedia

http://it.wikipedia.org/wiki/Stdio.h

ferror

Controlla se l'indicatore d'errore stato settato per un dato stream. Forza lo svuotamento del buffer output per un dato stream, provocando l'immediata scrittura su file. Salva la posizione corrente associata allo stream passato come primo argomento (un FILE *) nel secondo argomento passatole (un fpos_t *). Restituisce un carattere da un file. Restituisce una stringa presa da un file, terminata da un carattere di nuova riga ( '\n') o dal carattere nullo ('\0'). Scrive un carattere su un file. Scrive una stringa su un file. Restituisce un indicatore di posizione sul file che pu essere passato alla funzione fseek(). Si sposta attraverso un file. Imposta l'indicatore di posizionamento del file di uno stream associato al primo argomento (un FILE *) come memorizzato nel suo secondo argomento (un fpos_t *). Legge da file dei dati di diverse dimensioni. Scrive su file dei dati di diverse dimensioni. Legge e restituisce un carattere dallo stream passatole ed incrementa l'indicatore di posizionamento nel file; possibile che venga implementato come macro con gli stessi effetti di fgetc(), tranne che potrebbe agire sullo stream pi di una volta. Ha gli stessi effetti di
getc(stdin).

fflush

fgetpos

fgetc fgets fputc fputs ftell fseek

fsetpos

fread fwrite

getc

getchar

gets

Legge caratteri da stdin finch non incontra un carattere di nuova riga (newline) o un EOF e salva il risultato nell'argomento passatole ( char *). Utilizzato per stampare vari tipi di dato su Anch'essa utilizzata per stampare su Scrive un messaggio di errore su
stdout. stdout.

printf, fprintf, sprintf, snprintf vprintf perror

stderr.

putc

Scrive e restituisce un carattere da uno stream ed incrementa l'indicatore di posizionamento nel file; possibile che venga implementato come macro, con gli stessi effetti di fputc(), tranne

3 di 6

30/06/2010 12:46

stdio.h - Wikipedia

http://it.wikipedia.org/wiki/Stdio.h

che potrebbe agire sullo stream pi di una volta.


putchar, fputchar scanf, fscanf, sscanf vfscanf, vscanf, vsscanf setbuf, setvbuf tmpnam ungetc puts

Ha lo stesso effetto di

putc(stdin).

Usato per ricevere input da Usato per ricevere input da

stdin

o da stream generici.

stdin.

Imposta il tipo di buffering per un dato stream. Crea un nome di file temporaneo e lo immagazzina nel primo argomento (un char *). Reinserisce un carattere in uno stream di input. Scrive una stringa su
stdout.

Costanti
Le costanti definite in Nome
EOF stdio.h

includono: Descrizione Un numero intero negativo di tipo int usato per indicare la condizione di raggiunto fine file. Un intero indicante la dimensione del buffer usato dalla funzione setbuf(). La dimensione di un array di char grande abbastanza da contenere il nome di un qualsiasi file gestibile su una particolare architettura.

Valore

BUFSIZ

FILENAME_MAX

FOPEN_MAX

>= 8

Il numero massimo di file che possono essere aperti contemporaneamente. Abbreviazione di "I/O fully buffered" , cio "I/O completamente bufferizzato"; un intero che pu essere passato alla funzione setvbuf() per richiedere che uno stream sia bufferizzato a blocchi.

_IOFBF

4 di 6

30/06/2010 12:46

stdio.h - Wikipedia

http://it.wikipedia.org/wiki/Stdio.h

_IOLBF

Abbreviazione di "I/O line buffered" , cio "I/O bufferizzato per linee"; un intero che pu essere passato alla funzione setvbuf() per richiedere che uno stream sia bufferizzato per linee. Abbreviazione di "I/O not buffered" , cio "I/O non bufferizzato"; un intero che pu essere passato alla funzione setvbuf() per richiedere che uno stream non sia bufferizzato. La dimensione di un array di char grande abbastanza per conservare il nome di file temporaneo generato dalla funzione tmpnam(). Generalmente viene definito come 0, oppure 0L, oppure
(void*)0

_IONBF

L_tmpnam

NULL

Una macro che espande nella costante puntatore nullo; in altre parole, una costante che rappresenta un valore che garantito essere l'indirizzo di una posizione non valida nella memoria. Un intero che pu essere passato alla funzione fseek() per richiedere un posizionamento relativo rispetto alla posizione attuale nel file. Un intero che pu essere passato alla funzione fseek() per richiedere il posizionamento alla fine del file. Un intero che pu essere passato alla funzione fseek() per richiedere il posizionamento all'inizio del file.

SEEK_CUR

SEEK_END

SEEK_SET

TMP_MAX

>= 25

Il massimo numero di nomi di file unici generabili dalla funzione tmpnam().

Variabili
Le variabili definite in Nome
stdin stdio.h

includono: Descrizione

Un puntatore a FILE che si riferisce allo stream di standard input, generalmente la tastiera. Un puntatore a FILE che si riferisce allo stream di standard output, generalmente un terminale.

stdout

5 di 6

30/06/2010 12:46

stdio.h - Wikipedia

http://it.wikipedia.org/wiki/Stdio.h

stderr

Un puntatore a FILE che si riferisce allo stream di standard error, generalmente un terminale.

Tipi di dato
I tipi di dato definiti in Nome
stdio.h

sono: Descrizione

Una struttura contenente le informazioni su un file (od in genere uno stream), necessarie per eseguire su di esso le operazioni di input/output, come ad esempio:
FILE

la posizione attuale nello stream un indicatore di fine file un indicatore d'errore un puntatore al buffer dello stream, se applicabile Un tipo scalare capace di identificare univocamente la posizione di ogni byte in un file. Un tipo intero che il tipo del valore restituito dall'operatore
sizeof.

fpos_t size_t

Altri progetti
Wikibooks contiene testi o manuali su Stdio.h Categoria: Libreria standard del C Ultima modifica per la pagina: 11:03, 16 feb 2010. Il testo disponibile secondo la licenza Creative Commons AttribuzioneCondividi allo stesso modo; possono applicarsi condizioni ulteriori. Vedi le condizioni d'uso per i dettagli. Wikipedia un marchio registrato della Wikimedia Foundation, Inc. Politica sulla privacy Informazioni su Wikipedia Avvertenze

6 di 6

30/06/2010 12:46

Potrebbero piacerti anche