ISDIGIT C ++

ISDIGIT C ++

ISDIGIT () -funksjonen brukes i C- og C ++ programmeringsspråk. Hensikten med denne funksjonen er å sjekke om tegnet som går gjennom det er et siffer eller er noen annen karakter. Det returnerer alltid en verdi som ikke er null hvis tegnet er et siffer; Ellers returnerer det 0. Slike situasjoner forekommer hovedsakelig i programmering mens vi oppretter en kildekode når vi trenger å skille numeriske og alfabetiske verdier fra strengen. Så foretrekker vi å bruke denne funksjonen sammen med karakterutvalget av å ha andre operatører i form av tegn. Denne artikkelen vil inneholde noen elementære eksempler relatert til ISDIGIT ().

Funksjoner av ISDIGIT ()

  • ISDIGIT () -funksjonen er erklært i overskriftsfilen . Derfor må vi bruke dette biblioteket i vår kildekode, enten i C eller C++.
  • Denne funksjonen tar bare ett argument for heltalldatatype og returnerer verdien i form av et heltall.
  • Funksjonen brukes til å sjekke om tegnet det tar som et argument i parameteren er i en numerisk verdi fra 0 til 9 eller ikke.
  • Selv om vi vet at denne funksjonen tar et argument i heltall, kan en enkelt karakter også føres gjennom den; Inne i funksjonen konverteres tegnet til ASCII -verdi for å sjekke.

IsDigit () syntaks

Syntaksen til ISDIGIT () -funksjonen er:

#IsDigit (int ch);

Det tar bare en enkelt karakter som er 'CH'; Denne karakteren er sjekket. Først av alt er det foretrukket å bruke et direkte heltall, men hvis brukeren legger til et tegn i stedet for et heltall, blir det støpt til en heltalltype og deretter sjekket gjennom ISDIGIT () -funksjonen.

ISDIGIT -metoden fungerer ikke ordentlig for desimal eller floatnumre. For for dem returnerer det falskt.

Returverdi

ISDIGIT () -funksjonen returnerer verdien:

  • En ikke-null heltall numerisk verdi hvis vi bruker et tegn som siffer. Dette fungerer også som et boolsk flagg. 1 returneres hvis karakteren er et siffer. Det fungerer som en sann situasjon.
  • På den annen side, som en boolsk, returnerer den 0 når tilstanden er falsk, og tegnet ikke er et siffer.

Forskjell mellom isDigit (), numerisk () og desimal ()

Hovedforskjellen mellom disse tre er at ISDIGIT () -funksjonen også støtter desimaler og abonnement. Mens desimal () -funksjonen bare støtter desimaltallene. ISNumeric () -funksjonen har også støtte for abonnement og overskrifter.

Udefinert oppførsel av ISDIGIT ()

Oppførselen til ISDIGIT () -funksjonen sies å være udefinert hvis verdien av den angitte karakteren ikke er i stand til å være representerbar som en usignert karakter. Eller for det andre, hvis verdien av tegnet ikke er lik EOF.

Prøve

Vi vil bekrefte om tegnet som brukes er et siffer eller ikke. Dette er en enkel bruk av denne innebygde funksjonen. Dette vil fungere som en boolsk her. Hvis sifferet blir funnet, vil det returnere 1, og i det andre tilfellet vil 0 bli returnert. Ganske enkelt vi vil passere et siffer '5' som en parameter til funksjonen

IsDigit ('5');

Utfør kildekoden ved å bruke G ++ -kompilatoren. Denne kompilatoren brukes til å utføre C ++ -programmer i Ubuntu -operativsystemet.

$ g ++ -o filfil.c
$ ./fil

Den resulterende verdien vises.

Eksempel 1

Dette eksemplet inneholder et tegn som er tildelt av et tall. Så bruker vi en if-ests-setning for å sjekke om det brukte tegnet er et siffer eller ikke. Hvis det er et siffer, vises en melding. Og hvis det ikke er det, så viser systemet at verdien ikke er numerisk.

ISDIGIT (CH);

Nå vil vi samle koden og utføre den slik vi har brukt en numerisk verdi for å se at meldingen vil vises at tegnet er numerisk.

Eksempel 2

Dette eksemplet innebærer bruk av en streng med blandede tegn, både alfabeter og tall også. For strenginngang har vi brukt biblioteket med strengen for å bruke alle de innebygde funksjonene til strengene.

#inkludere

I hovedprogrammet initialiser strengen. Her har vi tatt et alfabet for å sikre tilstedeværelsen av sifre. Siden det er en hel streng, så å takle dette, har vi brukt en for loop for å sjekke hvert element på hver indeks av karaktergruppen. Funksjonen til streng strlen (STR) brukes for lengden på strengen.

Sjekk = isDigit (str [i]);

Funksjonen vil sjekke sifrene som er til stede i strengen, og deretter blir nummeret lagret i variabel sjekk. Deretter brukte vi en sjekk gjennom IF-uttalelse for å sjekke om variabelen 'sjekken' ikke er tom og deretter trykte alle sifrene som er til stede inne i variabelen.

Strengene vi har brukt inneholder tilfeldige tegn som også har operatører. Så ved utførelse vil du bare få de digitale numeriske verdiene.

Eksempel 3

I likhet med Isdigit, er Isalpha også en funksjon som brukes i programmeringsspråket C ++ for å sjekke alfabetene som er til stede i inngangsstrengen. Så inne i hovedprogrammet vil vi igjen ta en streng som har alfabeter og tall. Begge funksjonene vil fungere for å skille alfabeter og tall fra strengen. Både alfabeter og tall er variablene for heltallstype for å lagre de resulterende verdiene, initialiseres som 0 i utgangspunktet. Ved å bruke en for loop, kan vi få tilgang til hvert tegn på matrisen. Først vil 'Isalpha' sjekke alle alfabetene.

Det vil fungere slik at hvis et alfabet blir funnet, vil variabelen bli økt som en teller. En lignende sak er for Isdigit; Tallvariabelen vil bli økt når den finner noe tall i strengen. Begge disse tellerne vil vise det totale tallene.

Du kan se at strengen inneholder 3 alfabeter og 4 sifre.

Eksempel 4

Dette eksemplet har brukerinteraksjon. Den angitte verdien vil bli sjekket av systemet enten det er et siffer eller ikke. Deretter vises meldingen av programmet.

Hovedprogrammet har variabelen som er en heltallstype for å sjekke om det angitte tegnet er et siffer. Deretter vises en melding slik at brukeren vil legge inn et tegn. Dette tegnet blir sjekket gjennom IF -uttalelsen ved å bruke ISDIGIT () -funksjonen. Hvis det er et siffer, vises meldingen at den oppnås.

Utfør kildekoden. Først vil vi legge inn et siffer på visning av meldingen. Systemet vil sjekke i henhold til programmet. Derfor oppnås en melding fra sifferet.

Nå vil vi bruke en alfabetstreng for å sjekke resultatene. Så den resulterende verdien viser at den angitte verdien ikke er et siffer.

Konklusjon

'ISDIGIT C ++' er en funksjon som brukes til å sjekke om strengen eller et tegn den tar som en parameter er et siffer eller inneholder ett eller flere sifre i den eller ikke. Dette er en enkel funksjon som brukes på C ++ programmeringsspråket. Noen grunnleggende funksjoner er omtalt her som refererer til bruken og fungerer. Vi har implementert noen eksempler på Ubuntu -systemet som viser de resulterende verdiene i henhold til isdigit -funksjonen.