Libreria C - <stdio.h>

Il stdio.h L'intestazione definisce tre tipi di variabili, diverse macro e varie funzioni per eseguire input e output.

Variabili di libreria

Di seguito sono riportati i tipi di variabili definiti nell'intestazione stdio.h -

Sr.No. Variabile e descrizione
1

size_t

Questo è il tipo integrale senza segno ed è il risultato di sizeof parola chiave.

2

FILE

Questo è un tipo di oggetto adatto per memorizzare le informazioni per un flusso di file.

3

fpos_t

Questo è un tipo di oggetto adatto per memorizzare qualsiasi posizione in un file.

Macro di libreria

Di seguito sono riportate le macro definite nell'intestazione stdio.h -

Sr.No. Macro e descrizione
1

NULL

Questa macro è il valore di una costante del puntatore nullo.

2

_IOFBF, _IOLBF e _IONBF

Queste sono le macro che si espandono in espressioni di costanti integrali con valori distinti e adatte all'uso come terzo argomento di setvbuf funzione.

3

BUFSIZ

Questa macro è un numero intero, che rappresenta la dimensione del buffer utilizzato da setbuf funzione.

4

EOF

Questa macro è un numero intero negativo, che indica che è stata raggiunta la fine del file.

5

FOPEN_MAX

Questa macro è un numero intero, che rappresenta il numero massimo di file che il sistema può garantire per l'apertura simultanea.

6

FILENAME_MAX

Questa macro è un numero intero, che rappresenta la lunghezza più lunga di un array di caratteri adatto a contenere il nome di file più lungo possibile. Se l'implementazione non impone alcun limite, questo valore dovrebbe essere il valore massimo consigliato.

7

L_tmpnam

Questa macroèun numero intero, che rappresenta la lunghezza massima di un array di caratteri adatto a contenere il nome di file temporaneo più lungo possibile creato dal tmpnam funzione.

8

SEEK_CUR, SEEK_END, e SEEK_SET

Queste macro vengono utilizzate in fseek funzione per individuare diverse posizioni in un file.

9

TMP_MAX

Questa macro è il numero massimo di nomi di file univoci che la funzione tmpnam può generare.

10

stderr, stdin, e stdout

Queste macro sono puntatori a tipi di FILE che corrispondono ai flussi di errore standard, input standard e output standard.

Funzioni di libreria

Di seguito sono riportate le funzioni definite nell'intestazione stdio.h -

Segui la stessa sequenza di funzioni per una migliore comprensione e per utilizzarle Try it(Compilatore in linea), perché il file creato nella prima funzione verrà utilizzato nelle funzioni successive.
Sr.No. Descrizione della funzione
1 int fclose (FILE * stream)

Chiude il flusso. Tutti i buffer vengono scaricati.

2 void clearerr (FILE * stream)

Cancella la fine del file e gli indicatori di errore per il flusso specificato.

3 int feof (FILE * stream)

Verifica l'indicatore di fine file per il flusso specificato.

4 int ferror (FILE * stream)

Verifica l'indicatore di errore per il flusso specificato.

5 int fflush (FILE * stream)

Svuota il buffer di output di un flusso.

6 int fgetpos (FILE * stream, fpos_t * pos)

Ottiene la posizione del file corrente del flusso e la scrive in pos.

7 FILE * fopen (const char * filename, const char * mode)

Apre il nome del file a cui punta il nome del file utilizzando la modalità data.

8 size_t fread (void * ptr, size_t size, size_t nmemb, FILE * stream)

Legge i dati dal flusso specificato nell'array puntato da ptr.

9 FILE * freopen (const char * filename, const char * mode, FILE * stream)

Associa un nuovo nome file al flusso aperto specificato e contemporaneamente chiude il vecchio file nel flusso.

10 int fseek (FILE * stream, offset int lungo, int da dove)

Imposta la posizione del file del flusso sull'offset specificato. L'argomento offset indica il numero di byte da cercare dalla posizione da cui data .

11 int fsetpos (FILE * stream, const fpos_t * pos)

Imposta la posizione del file del flusso dato nella posizione data. L'argomento pos è una posizione data dalla funzione fgetpos.

12 long int ftell (FILE * stream)

Restituisce la posizione del file corrente del flusso specificato.

13 size_t fwrite (const void * ptr, size_t size, size_t nmemb, FILE * stream)

Scrive i dati dall'array puntato da ptr nel flusso specificato.

14 int remove (const char * nomefile)

Elimina il nome file specificato in modo che non sia più accessibile.

15 int rename (const char * old_filename, const char * new_filename)

Fa sì che il nome del file a cui si fa riferimento, da old_filename venga cambiato in new_filename.

16 void rewind (FILE * stream)

Imposta la posizione del file all'inizio del file del flusso specificato.

17 void setbuf (FILE * stream, char * buffer)

Definisce la modalità di bufferizzazione di un flusso.

18 int setvbuf (FILE * stream, char * buffer, modalità int, size_t size)

Un'altra funzione per definire come un flusso dovrebbe essere bufferizzato.

19 FILE * tmpfile (void)

Crea un file temporaneo in modalità di aggiornamento binario (wb +).

20 char * tmpnam (char * str)

Genera e restituisce un nome di file temporaneo valido che non esiste.

21 int fprintf (FILE * stream, const char * format, ...)

Invia l'output formattato a un flusso.

22 int printf (const char * formato, ...)

Invia l'output formattato a stdout.

23 int sprintf (char * str, const char * format, ...)

Invia l'output formattato a una stringa.

24 int vfprintf (FILE * stream, const char * format, va_list arg)

Invia l'output formattato a un flusso utilizzando un elenco di argomenti.

25 int vprintf (const char * formato, va_list arg)

Invia l'output formattato a stdout utilizzando un elenco di argomenti.

26 int vsprintf (char * str, const char * format, va_list arg)

Invia l'output formattato a una stringa utilizzando un elenco di argomenti.

27 int fscanf (FILE * stream, const char * format, ...)

Legge l'input formattato da un flusso.

28 int scanf (const char * formato, ...)

Legge l'input formattato da stdin.

29 int sscanf (const char * str, const char * format, ...)

Legge l'input formattato da una stringa.

30 int fgetc (FILE * stream)

Ottiene il carattere successivo (un carattere senza segno) dal flusso specificato e fa avanzare l'indicatore di posizione per il flusso.

31 char * fgets (char * str, int n, FILE * stream)

Legge una riga dal flusso specificato e la memorizza nella stringa a cui punta str. Si ferma quando vengono letti (n-1) caratteri, viene letto il carattere di nuova riga o viene raggiunta la fine del file, a seconda di cosa si verifica per prima.

32 int fputc (int char, FILE * stream)

Scrive un carattere (un char senza segno) specificato dall'argomento char nel flusso specificato e fa avanzare l'indicatore di posizione per il flusso.

33 int fputs (const char * str, FILE * stream)

Scrive una stringa nel flusso specificato fino al carattere null ma escluso.

34 int getc (FILE * stream)

Ottiene il carattere successivo (un carattere senza segno) dal flusso specificato e fa avanzare l'indicatore di posizione per il flusso.

35 int getchar (void)

Ottiene un carattere (un carattere senza segno) da stdin.

36 char * gets (char * str)

Legge una riga da stdin e la memorizza nella stringa puntata da, str. Si ferma quando viene letto il carattere di nuova riga o quando viene raggiunta la fine del file, a seconda di cosa si verifica per prima.

37 int putc (int char, FILE * stream)

Scrive un carattere (un char senza segno) specificato dall'argomento char nel flusso specificato e fa avanzare l'indicatore di posizione per il flusso.

38 int putchar (int char)

Scrive un carattere (un char senza segno) specificato dall'argomento char in stdout.

39 int mette (const char * str)

Scrive una stringa in stdout fino al carattere null ma escluso. All'output viene aggiunto un carattere di nuova riga.

40 int ungetc (int char, FILE * stream)

Inserisce il carattere char (un carattere senza segno) nel flusso specificato in modo che venga letto il carattere successivo.

41 void perror (const char * str)

Stampa un messaggio di errore descrittivo su stderr. Prima viene stampata la stringa str seguita da due punti e quindi da uno spazio.