La lingua C fornisce una serie di funzioni nelle sue librerie che consentono di determinare se il tipo di dati di una variabile è di un tipo particolare. In questo linguaggio, ci sono anche funzioni che determinano le proprietà e classificano i dati all'interno dello stesso tipo. Ad esempio, la libreria CTYPE fornisce una serie di funzioni che consentono di determinare se il carattere immesso nell'argomento di input è numerico o alfanumerico, cifra, grafica, controllo, maiuscolo e così via.
In questo articolo di Linx Sump, ti mostreremo come utilizzare la funzione isdigit () di questa libreria utilizzando Linux GCC. Usiamo la funzione in esempi pratici che abbiamo preparato per te. In tal modo, utilizziamo i frammenti e le immagini del codice per applicare l'uso di isdigit () in diversi casi.
Ti mostreremo anche una descrizione teorica completa di questa funzione, della sua sintassi, argomenti di input e output e il tipo di dati di ciascuno di essi.
Sintassi della funzione isdigit in c
int isdigit (char c)
Descrizione della funzione isdigit in c
La funzione isdigit () in c determina se il carattere di input "C" corrisponde ai valori decimali da 0 a 9 nel codice ASCII. Questi tipi di funzioni sono anche un'ottima risorsa per recuperare le informazioni da frammenti di stringa o file di testo ed elaborare tali dati.
Questi tipi di funzioni sono spesso usati per integrare le funzioni come getchar () o getch () che leggono un carattere da un flusso e restituiscono un numero intero. Restituiscono anche un carattere e un codice di errore. GetChar () può restituire EOF (che è definito come una costante definita dall'implementazione negativa) tramite un valore di ritorno per indicare che il flusso di input è terminato.
Per la seguente espressione, isdigit () restituisce un risultato di "a" uguale a "0" se "b" non contiene un carattere di tipo "cifra". Se "b" contiene un carattere di tipo "cifre", questa funzione restituisce un risultato che non è uguale a zero.
a = isdigit (b);
La funzione isdigit () appartiene al "ctype.H ”” e deve essere dichiarato prima di utilizzare questa funzione come mostrato nel frammento seguente:
#includere
Una volta che dichiariamo l'intestazione nel ".File C ", possiamo implementare il CEIL () e una delle sue funzioni.
Successivamente, compiliamo un frammento di codice in cui utilizziamo due variabili, A e B, con caratteri che rappresentano rispettivamente le cifre e le lettere. Quindi, li inviamo come argomenti di input a isdigit ().
Utilizzando la funzione printf (), vedremo il risultato restituito da ciascuna delle chiamate con i diversi caratteri inviati come input nella console di comando.
#includere
#includere
int main ()
char a = '3';
char b = 'a';
int c;
c = isdigit (a);
printf ("è carattere numerico: %d", c);
c = isdigit (b);
printf ("\ nis non numerico carattere: %d \ n", c);
restituzione 0;
Come mostra la seguente figura, il risultato che viene restituito da isdigit () è uguale a 0 per la variabile “A”, mentre non è uguale a 0 per la variabile “B” che contiene un carattere non numerico:
Esempio: isdigit () come condizione nei condizionali if
Questi tipi di funzioni utilizzati per determinare il tipo di dati di una variabile da sola non forniscono una soluzione pratica. Ma quando il risultato di queste funzioni viene aggiunto come condizione in qualsiasi tipo di condizionale, possiamo eseguire il codice o generare un reso in base al fatto che il tipo di dati inserito sia quello corretto per un processo particolare. Ciò è particolarmente utile quando creiamo le nostre funzioni in quanto evita errori di incompatibilità dei dati o risultati errati se i dati errati vengono passati negli argomenti di input.
In questo esempio, creiamo una semplice applicazione console in cui inseriamo un carattere, lo recuperiamo con la funzione scanf () e quindi utilizziamo isdigit () per una condizione "if" per determinare se il carattere immesso è numerico o meno. Quando premi "Invio", il messaggio "Il carattere è numerico" viene visualizzato se è numerico. Altrimenti, viene visualizzato il messaggio "Il carattere non è numerico".
Copia e incolla il seguente codice per questo esempio nel tuo ".file c ". Compilare ed eseguire il programma, digitare un carattere e premere Invio. Per uscire dall'applicazione, premere Ctrl + C:
#includere
#includere
void main ()
Char A [2];
mentre (1)
scanf ("%s", & a [0]);
if (isdigit ( *a) != 0)
printf ("I caratteri sono numerici \ n");
altro
printf ("I caratteri non sono numerici \ n");
ritorno;
La figura mostra l'uso di questa funzione nei condizionali "if" e i risultati per ciascun caso.
Conclusione
Isdigit () è una delle funzioni definite nel "ctype.H ”” che viene utilizzata per classificare i personaggi nei loro vari sottotipi come numerico, alfanumerico, maiuscolo e così via. In questo articolo di Linux, abbiamo spiegato tutto sulla funzione isdigit (). Per aiutarti a padroneggiare e comprendere questa risorsa, abbiamo creato esempi pratici e frammenti di codice che spiegano il suo utilizzo passo-passo. Abbiamo anche aggiunto le immagini che mostrano l'implementazione degli esempi nella console di comando. Speriamo che tu abbia trovato utile questo articolo di lingua C. Vedi altri articoli di suggerimento Linux per ulteriori suggerimenti e informazioni.