C -språket gir en rekke funksjoner i bibliotekene som lar deg bestemme om datatypen til en variabel er av en bestemt type. På dette språket er det også funksjoner som bestemmer egenskapene og klassifiserer dataene innenfor samme type. For eksempel gir CTYPE -biblioteket et sett med funksjoner som lar deg bestemme om tegnet som legges inn i inngangsargumentet er numerisk eller alfanumerisk, siffer, grafikk, kontroll, store bokstaver og så videre.
I denne Linx -hint -artikkelen vil vi vise deg hvordan du bruker ISDIGIT () -funksjonen til dette biblioteket ved å bruke Linux GCC. Vi bruker funksjonen i praktiske eksempler som vi forberedte for deg. Ved å gjøre dette bruker vi kodebiter og bilder for å bruke bruken av ISDIGIT () i forskjellige tilfeller.
Vi vil også vise deg en fullstendig teoretisk beskrivelse av denne funksjonen, dens syntaks, inngangs- og utgangsargumenter og datatypen til hver av dem.
ISDIGIT -funksjonssyntaks i C
int isdigit (char c)
Beskrivelse av isdigit -funksjonen i C
ISDIGIT () -funksjonen i C bestemmer om “C” inngangskarakteren tilsvarer desimalverdier fra 0 til 9 i ASCII -kode. Denne typen funksjoner er også en flott ressurs for å hente informasjonen fra strengfragmenter eller tekstfiler og behandle disse dataene.
Disse typer funksjoner brukes ofte til å utfylle funksjonene som getchar () eller getch () som leser et tegn fra en strøm og returnerer et heltall. De returnerer også et tegn og en feilkode. GetChar () kan returnere EOF (som er definert som en negativ implementeringsdefinert konstant) via en returverdi for å indikere at inngangsstrømmen er avsluttet.
For følgende uttrykk returnerer IsDigit () et resultat av "A" lik "0" hvis "B" ikke inneholder et tegn på "siffer" -type. Hvis "B" inneholder et tegn på "siffer" -type, returnerer denne funksjonen et resultat som ikke er lik null.
a = isDigit (b);
ISDIGIT () -funksjonen tilhører “CTYPE.h ”header og må deklareres før du bruker denne funksjonen som vist i følgende fragment:
#inkludere
Når vi erklærer overskriften i “.c ”-fil, vi kan implementere taket () og noen av dens funksjoner.
Deretter sammenstiller vi et kodefragment der vi bruker to variabler, henholdsvis A og B, med tegn som representerer sifrene og bokstavene. Deretter sender vi dem som inngangsargumenter til IsDigit ().
Ved hjelp av printf () -funksjonen vil vi se resultatet som blir returnert av hver av samtalene med de forskjellige tegnene som blir sendt som inndata i kommandokonsollen.
#inkludere
#inkludere
int main ()
char a = '3';
char b = 'a';
int c;
c = isDigit (a);
printf ("er numerisk tegn: %d", c);
c = isDigit (b);
printf ("\ nis ikke-numerisk tegn: %d \ n", c);
retur 0;
Som følgende figur viser, er resultatet som returneres av IsDigit () lik 0 for variabel “A”, mens det ikke er lik 0 for variabel “B” som inneholder et ikke-numerisk tegn:
Eksempel: ISDIGIT () som en tilstand i if conditionals
Disse typer funksjoner som brukes til å bestemme datatypen til en variabel alene gir ikke en praktisk løsning. Men når resultatet av disse funksjonene legges til som en tilstand i alle typer betingede, kan vi utføre koden eller generere en avkastning avhengig av om datatypen som er angitt er riktig for en bestemt prosess. Dette er spesielt nyttig når vi oppretter våre egne funksjoner, da det unngår data -inkompatibilitetsfeil eller feilaktige resultater hvis feil data blir gitt i inngangsargumentene.
I dette eksemplet lager vi en enkel konsollapplikasjon der vi skriver inn et tegn, henter det med Scanf () -funksjonen og bruker deretter isDigit () for en "if" -tilstand for å avgjøre om tegnet som er lagt inn er numerisk eller ikke. Når vi trykker på "Enter", vises "karakteren er numerisk" -meldingen hvis den er numerisk. Ellers vises "karakteren er ikke numerisk" -meldingen.
Kopier og lim inn følgende kode for dette eksemplet i ".c ”-fil. Kompilere og kjøre programmet, skriv inn et tegn og trykk Enter. For å avslutte applikasjonen, trykk CTRL + C:
#inkludere
#inkludere
tomrom ()
char a [2];
mens (1)
scanf ("%s", & a [0]);
if (isDigit ( *a) != 0)
printf ("tegnene er numerisk \ n");
ellers
printf ("tegnene er ingen numerisk \ n");
komme tilbake;
Figuren viser bruken av denne funksjonen i "hvis" -forhold og resultatene for hvert tilfelle.
Konklusjon
IsDigit () er en av funksjonene som er definert i ”CTYPE.H ”-overskrift som brukes til å klassifisere karakterene i de forskjellige undertypene som numerisk, alfanumerisk, store bokstaver og så videre. I denne Linux -hint -artikkelen forklarte vi alt om ISDIGIT () -funksjonen. For å hjelpe deg med å mestre og forstå denne ressursen, opprettet vi praktiske eksempler og kodefragmenter som forklarer bruken trinn for trinn. Vi la også til bildene som viser implementeringen av eksemplene i kommandokonsollen. Vi håper du fant denne C Language -artikkelen nyttig. Se andre Linux -hint -artikler for flere tips og informasjon.