Funzione di fgets in c

Funzione di fgets in c
Il titolo di questo articolo poco elimina lo scopo di utilizzare la funzione FGETS in C. La funzione FGETS () in C è progettata principalmente per ottenere l'input dei dati da un utente o un flusso di input come il file e visualizzarlo all'interno della console di output. Per ottenere l'input da un utente da visualizzare sulla console, dobbiamo avere una memoria o un array del buffer in cui possiamo archiviare tale input. Usando questa funzione, possiamo limitare il numero di caratteri da visualizzare da un flusso di input ed evitare di visualizzare i dati in eccesso e visualizzare solo quelli necessari. Questa guida copre alcuni esempi C per spiegare in dettaglio l'uso della funzione fgets ().

L'aggiornamento del sistema è un must prima di eseguire qualsiasi tipo di codifica su di esso in quanto si rivolge a tutti i problemi relativi alla memoria e rende la funzione di sistema piena. Pertanto, la parola chiave "aggiorna" con l'utilità "apt" e il privilegio "sudo" è un must. Dopo aver aggiunto questa query alla shell di Linux, richiederebbe il passcode di un utente attualmente accessibile.

Se il sistema Linux ha già un compilatore C configurato in esso, non è necessario aggiungerlo di nuovo. Se non è configurato, dovrai affrontare problemi durante l'esecuzione del codice. Pertanto, installalo utilizzando l'utilità "APT" all'interno dell'istruzione "installa" seguita dal nome dell'utilità "GCC".

Prima di avere uno sguardo chiaro all'esempio C per la funzione FGETS, dobbiamo creare un file "C". I "fgets.Il file c "che creiamo può essere visualizzato nell'elenco dei file e delle cartelle della directory" home "corrente dopo aver utilizzato la query" LS "dopo averlo creato con la query" Touch ".

Dopo che il file è stato creato correttamente, lo apriremo nell'editor "GNU Nano" di Linux. Pertanto, abbiamo provato il comando visualizzato nella shell.

Esempio 1:

Eseguiamo il primo esempio di C per utilizzare la funzione FGETS per ottenere i dati di input dall'utente in fase di esecuzione e visualizzare una gamma specifica di caratteri da esso sulla shell. Ecco il codice C che viene utilizzato per ottenere i dati da un utente. Questo codice utilizza l'intestazione di input/output standard per l'uso dei flussi di input e output standard come STDIO.H. Prima di utilizzare la funzione principale (), definiamo una variabile massima con il valore 20 che viene utilizzato come intervallo. Il metodo principale () viene utilizzato qui per la funzionalità generale.

L'array tipo di carattere “A” di dimensione “max” viene dichiarato e la funzione printf () di C viene utilizzata per visualizzare la stringa “Input:” sulla shell per chiedere all'utente un input. La funzione FGETS () di C viene chiamata qui passandolo un array "A", variabile massima e output di input standard "stdin" mutabile come argomenti per ottenere l'input da un utente. Questo input viene salvato nell'array "A" fino alla lunghezza "massima". Un totale di 20 caratteri viene archiviato e il resto viene scartato.

L'istruzione printf () utilizza quindi l'array "A" per visualizzare quei 20 caratteri dall'ingresso. L'istruzione Return 0 termina il programma senza intoppi dopo l'esecuzione. Salvalo prima di questo codice esecuzione.

#includere
#define max 20
int main ()
Char a [max];
printf ("input:");
fgets (a, max, stdin);
printf ("dati: %s \ n", a);
restituzione 0;

Dopo aver salvato il nostro codice funzione C fGets () nel suo file, usciamo dall'editor "nano" con il "ctrl+x" e applichiamo il comando "GCC" a "FGETS.File C "per farlo compilare. Niente è successo, quindi abbiamo provato il "./UN.fuori "query per eseguire il programma. La stringa "input" è apparsa insieme all'area di testo per ottenere un input da noi.

Aggiungiamo una singola riga di più di 30 caratteri e prendiamo duramente il tasto "Invio". I dati input vengono visualizzati fino ai primi 20 caratteri e il resto viene scartato.

Esempio 2:

All'interno della nostra nuova illustrazione C, dimostreremo l'uso della funzione FGETS () per ottenere i dati di testo dal flusso di file di input e visualizzarli sulla console. Pertanto, la struttura principale di questo codice è molto simile all'esempio precedente. La funzione principale () inizia con la dichiarazione di un descrittore di file "F" del tipo di punta utilizzando l'oggetto file integrato. L'array di tipo di carattere “A” della dimensione 30 viene dichiarato e la funzione fopen () di c viene chiamata per leggere il flusso di input “fGet.txt "dal sistema.

Il valore restituito viene salvato nel descrittore dei file null. L'istruzione "if" controlla se il valore di "f" è nullo o qualcos'altro. Se il valore è "nullo", lancia un errore usando la funzione "Perror" di C. Altrimenti, viene eseguita la parte "else-if" dell'affermazione che è chiamata funzione "fgets".

Lo scopo di utilizzare il metodo FGETS () è quello di ottenere 30 caratteri da un flusso di input "F", salvarli nell'array "A" e verificare se l'ingresso non è nullo. Quando l'intero input non è nullo, la funzione Puts () di C viene chiamata qui per visualizzare l'intero input di 30 caratteri sulla console mentre lo passano l'array "A" come argomento. Il flusso è chiuso usando la funzione fclose ().

;
f = fopen ("fgets.txt "," r ");
if (f == null)
Perror ("Errore!");
restituzione (-1);
altrimenti if (fgets (a, 30, f)!= Null)
pura (a);
fclose (f);
restituzione 0;

Prima di compilare il nostro codice, ti mostriamo i dati di testo all'interno dei FGET.File TXT (che viene utilizzato come flusso di input) con la query di visualizzazione "Cat". Mostra le 2 righe dei dati di testo. Ora si svolgono la compilazione e l'esecuzione. Otteniamo una singola prima riga nell'area di output. Questo perché scegliamo di ottenere solo 30 caratteri dal flusso di file di input.

Conclusione

Mentre concludiamo questo articolo, siamo sicuri al cento per cento che non ti pentirai di aver preso l'aiuto dal nostro articolo quando vuoi imparare alcune basi sulla funzione FGETS () di C. Abbiamo discusso su come utilizzare questa funzione per ottenere l'input standard dall'utente in fase di esecuzione e come è possibile ottenere i dati da un flusso di file e visualizzarli nell'area di output.