c character classification
Denne opplæringen forklarer C ++ karakter- og transformasjonsfunksjoner med eksempler. Noen viktige funksjoner som dekkes er isdigit, islower, isupper, isalpha etc .:
I vår forrige opplæring om 'biblioteksfunksjoner' så vi de forskjellige overskriftene som gir mange funksjoner som fungerer på forskjellige datatyper. Overskriften er en slik overskrift som inneholder et sett med funksjoner som klassifiserer og manipulerer individuelle tegn.
=> Besøk her for å lære C ++ fra grunnen.
Funksjonene deklarert i overskrift, tar et enkelt tegn (int-ekvivalent) som parameter og returnerer en heltallverdi som enten kan være en boolsk verdi eller en tegnverdi. En verdi 0 (null) indikerer falsk, mens en annen verdi enn 0 (ikke-null) indikerer sant.
Disse enkelttegnsfunksjonene kan brukes i programmet ved å inkludere toppteksten. Disse funksjonene er mye brukt og akseptert og er ekstremt nyttige i C ++ programmering for å teste og transformere eller manipulere tegn.
I denne opplæringen vil vi diskutere de forskjellige karakterfunksjonene og se hvordan hver av disse funksjonene kan brukes i et program.
Hva du vil lære:
C ++ tegnfunksjoner
C ++ - tegnfunksjoner er funksjonene som bare tar et enkelt tegn som parameter (kastet til int) og returnerer et resultat. Dette kan være klassifiseringsfunksjoner som isalpha, isalnum, isdigit, islower, isupper, etc. for å nevne noen få og transformerende funksjoner som toupper og tolower som forvandler et gitt tegn til henholdsvis store og små bokstaver.
I overskriften har vi to typer funksjoner definert som angitt nedenfor.
(i) Funksjoner for klassifisering av tegn
Tegnklassifiseringsfunksjoner brukes til å kontrollere om enkelttegnet som sendes som et argument til funksjonen tilhører en bestemt kategori.
Vi har tabellert tegnklassifiseringsfunksjonene som er inkludert i overskriften nedenfor:
Ikke | Funksjonsnavn | Funksjon Formål |
---|---|---|
7 | islower | Sjekker om et gitt tegn er med små bokstaver |
1 | isalnum | Sjekker om et gitt tegn er alfanumerisk |
to | isalpha | Sjekker om karakteren er alfabetisk |
3 | er blank | Sjekker om tegnet er tomt |
4 | iscntrl | Sjekker om det gitte tegnet er et kontrolltegn |
5 | isdigit | Sjekker om det gitte tegnet er et desimaltall |
6 | isgraph | Sjekker om det gitte tegnet har en grafisk fremstilling |
8 | skrive ut | Sjekker om tegnet er et tegn som kan skrives ut |
9 | ispunct | Sjekker om tegnet er et tegnsettingstegn |
10 | isspace | Sjekker om tegnet er et hvitt mellomrom |
elleve | isupper | Sjekker om det gitte tegnet er stort |
12 | isxdigit | Sjekker om tegnet heksadesimalt siffer |
(ii) Karaktertransformerende funksjoner
Karaktertransformerende funksjoner konverterer mellom tilfeller. Følgende funksjoner er inkludert i filen.
Ikke | Funksjonsnavn | Funksjonsformål |
---|---|---|
1 | å senke | Konverterer store bokstaver til små bokstaver |
to | toupper | Konverterer små bokstaver til store bokstaver |
La oss se hver av karakterfunksjonene (klassifisering og transformering) i detalj. Vi vil også presentere et enkelt C ++ programmeringseksempel for hver av funksjonene.
Isalnum
Funksjonsprototype: int isalnum (int c);
Parameter (er): c => Et tegn som bør sjekkes om det er alfanumerisk eller ikke
Returverdi:
ikke-null => c er alfanumerisk
0 => c er ikke alfanumerisk
Beskrivelse: Denne funksjonen sjekker om et gitt tegn c er alfanumerisk eller ikke. Med alfanumerisk betyr det at et tegn er mellom A (a) -Z (z) eller 0 til 9.
I C ++ er denne funksjonen stedsspesifikk, og definisjonen er til stede i overskriften.
Eksempel:
#include #include using namespace std; int main() { char chary(12) = 'Hello World'; // checking for isalnum() function for (int i=0; i<12; i++) { if (isalnum(chary (i))) cout << chary (i) << ' is alphanumeric' << endl; else cout << chary (i) << ' is not alphanumeric' << endl; } cout << endl; }
Produksjon:
Isalpha
Funksjonsprototype: int isalpha (int c);
Parameter (er): c-> Tegn som skal kontrolleres om det er alfabetisk eller ikke.
Returverdi:
ikke-null => c er alfabetisk
0 => ikke alfabetisk
Beskrivelse: Denne funksjonen sjekker om et gitt tegn c er alfabetisk, det vil si blant små og store bokstaver. I likhet med isalnum, avhenger denne funksjonen også av lokaliteten vi bruker.
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(5) = 'sth1'; for (int i=0; i<5; i++) { if (isalpha(ch_alpha(i))) cout << ch_alpha(i) << ' is an alphabet' << endl; else cout << ch_alpha(i) << ' is not an alphabet' << endl; } cout << endl; }
Produksjon:
Isblank
Funksjonsprototype: int isblank (int c);
Parameter (er): c => Tegn som skal kontrolleres.
Returverdi:
non-zero => tegnet er tomt
0 => tegnet er ikke tomt
Beskrivelse: Denne funksjonen sjekker om det gitte tegnet er tomt eller ikke. Tom karakter er et mellomrom som brukes til å skille ord i en tekstlinje.
I C ++ eksisterer den stedsspesifikke versjonen av isblank-funksjonen i.
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(6) = 's t h'; for (int i=0; i<6; i++) { if (isblank(ch_alpha(i))) cout << ch_alpha(i) << ' is a blank' << endl; else cout << ch_alpha(i) << ' is not a blank' << endl; } cout << endl; }
Produksjon:
Legg merke til den siste linjen i utgangen som sier “er ikke blank”. Dette er på grunn av tegnsettens siste posisjon som ikke er initialisert til en verdi, men som fremdeles har en utskriftsposisjon. Derfor er det ikke tomt.
Iscntrl
Funksjonsprototype: int iscntrl (int c);
Parameter (er): c => Tegn som skal kontrolleres
Returverdi:
ikke-null => c er kontrolltegn
0 => c er ikke kontrolltegn
Beskrivelse: Funksjon sjekker om den gitte parameteren er et kontrolltegn. Et kontrolltegn er et tegn som ikke vises i displayet eller ikke opptar en utskriftsposisjon.
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(6) = 's
t h'; for (int i=0; i<6; i++) { if (iscntrl(ch_alpha(i))) cout << ch_alpha(i) << ' is a control character' << endl; else cout << ch_alpha(i) << ' is not a control character' << endl; } cout << endl; }
Produksjon:
Isdigit
Funksjonsprototype: int isdigit (int c)
Parameter (er): c => Et tegn kastet til int hvis verdi skal kontrolleres.
Returverdi: ikke-null => c er et desimaltall
0 => c er ikke et siffer
Beskrivelse: Denne funksjonen sjekker om den gitte parameteren er et desimaltall eller ikke. Et tegn er et desimaltall hvis verdien er mellom 0 og 9.
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(5) = 'a12b'; for (int i=0; i<5; i++) { if (isdigit(ch_alpha(i))) cout << ch_alpha(i) << ' is a digit' << endl; else cout << ch_alpha(i) << ' is not a digit' << endl; } cout << endl; }
Produksjon:
Isgraph
Funksjonsprototype: int isgraph (int c)
Parameter (er): c => Karakter kastet int som blir sjekket ved hjelp av isgraph-funksjonen
Returverdi:
ikke-null => c er en grafisk fremstilling
0 => c er ikke en grafisk fremstilling
Beskrivelse: Funksjon sjekker om det gitte tegnet c er et tegn med grafisk fremstilling. Et tegn som kan skrives ut er et tegn med grafisk fremstilling.
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(6) = 'a~12b'; for (int i=0; i<6; i++) { if (isgraph(ch_alpha(i))) cout << ch_alpha(i) << ' is a graphical character' << endl; else cout << ch_alpha(i) << ' is not a graphical character' << endl; } cout << endl; }
Produksjon:
Islower
Funksjonsprototype: int islower (int c)
Parameter (er): c => Tegn som skal kontrolleres ved hjelp av islower-funksjonen.
Returverdi:
non-zer0 => c er små bokstaver
0 => c er ikke små bokstaver
Beskrivelse: Funksjonen lavere kontrollerer om det gitte tegnet c er små eller ikke.
En liten bokstav er den som har en av verdiene: a b c d e f g h I j k l m n o p q r s t u v w x y z.
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(4) = 'Sth'; for (int i=0; i<4; i++) { if (islower(ch_alpha(i))) cout << ch_alpha(i) << ' is a lowercase character' << endl; else cout << ch_alpha(i) << ' is not a lowercase character' << endl; } cout << endl; }
Produksjon:
Skrive ut
Funksjonsprototype: int sprint (int c)
Parameter (er): c => Tegn som skal kontrolleres ved hjelp av isprint-funksjonen.
Returverdi:
non-zer0 => c kan skrives ut
0 => c kan ikke skrives ut
Beskrivelse: Funksjon isprint sjekker om det gitte tegnet kan skrives ut. Et utskrivbart tegn er det som har en utskriftsposisjon i displayet.
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(4) = 'Sth'; for (int i=0; i<4; i++) { if (isprint(ch_alpha(i))) cout << ch_alpha(i) << ' is a printable character' << endl; else cout << ch_alpha(i) << ' is not a printable character' << endl; } cout << endl; }
Produksjon:
Ispunct
Funksjonsprototype: int ispunct (int c)
Parameter (er): c => Tegn som skal kontrolleres ved hjelp av ispunct-funksjonen.
Returverdi:
non-zer0 => c er et tegnsettingstegn
0 => c er ikke tegnsettingstegn
Beskrivelse: Denne funksjonen sjekker om det gitte tegnet er et tegnsettingstegn. Et tegn som er et grafisk tegn (fra isgraph) og ikke et alfanumerisk (fra isalnum) sies å være et tegnsettingstegn.
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(8) = 'sth@123'; for (int i=0; i<8; i++) { if (ispunct(ch_alpha(i))) cout << ch_alpha(i) << ' is a punctuation character' << endl; else cout << ch_alpha(i) << ' is not a punctuation character' << endl; } cout << endl; }
Produksjon:
Isspace
Funksjonsprototype: int isspace (int c)
Parameter (er): c => Tegn som skal kontrolleres ved hjelp av isspace-funksjonen.
Returverdi:
non-zer0 => c er et hvitt mellomrom
0 => c er ikke mellomrom
Beskrivelse: Denne funksjonen sjekker om det gitte tegnet er et hvitt mellomrom. For “C” -området er tegn i mellomrom noe av det følgende.
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(7) = 's t
h'; for (int i=0; i<7; i++) { if (isspace(ch_alpha(i))) cout << ch_alpha(i) << ' is a white space' << endl; else cout << ch_alpha(i) << ' is not a white space' << endl; } cout << endl; }
Produksjon:
Isupper
Funksjonsprototype: int isupper (int c)
Parameter (er): c => Tegn som skal kontrolleres ved hjelp av isupper-funksjonen.
Returverdi:
non-zer0 => c er stor
0 => c er ikke stor
Beskrivelse: Funksjonene sjekker lavere om det gitte tegnet c er stort eller ikke.
Et stort tegn er det som har en av verdiene: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z.
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(4) = 'STh'; for (int i=0; i<4; i++) { if (isupper(ch_alpha(i))) cout << ch_alpha(i) << ' is an uppercase character' << endl; else cout << ch_alpha(i) << ' is not an uppercase character' << endl; } cout << endl; }
Produksjon:
Isxdigit
Funksjonsprototype: int isxdigit (int c)
Parameter (er): c => Tegn som skal kontrolleres ved hjelp av isxdigit-funksjonen.
Returverdi:
non-zer0 => c er heksadesimal
0 => c er ikke heksadesimal
Beskrivelse: Denne funksjonen sjekker om det gitte tegnet er et heksadesimalt siffer. Gyldige heksadesimale sifre er 0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(6) = 'sbc10'; for (int i=0; i<6; i++) { if (isxdigit(ch_alpha(i))) cout << ch_alpha(i) << ' is hexadecimal digit' << endl; else cout << ch_alpha(i) << ' is not hexadecimal digit' << endl; } cout << endl; }
Produksjon:
å senke
Funksjonsprototype: int tolower (int c)
Parameter (er): c => Tegn som skal konverteres til små bokstaver.
Returverdi:
returnerer den lavere ekvivalenten til c, ellers uendret.
Returverdien er int og kan implisitt kastes til røye.
Beskrivelse: Dette konverterer det gitte tegnet c til dets små bokstaver. Hvis konvertering ikke er mulig for et gitt tegn, returneres den uendrede verdien (c).
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(4) = 'STH'; cout< Produksjon:
STH konvertert til små bokstaver: sth
toupper
Funksjonsprototype: int toupper (int c)
Parameter (er): c => tegn som skal konverteres til store bokstaver
Returverdi:
returnerer den øvre ekvivalenten til c, ellers uendret.
intervju spørsmål om nivå 1 i helpdesk
Returverdien er int og kan implisitt kastes til røye.
Beskrivelse: Dette konverterer den gitte karakteren c til den store ekvivalenten. Hvis en konvertering ikke er mulig for et gitt tegn, returneres den uendrede verdien (c).
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(10) = 'tutorials'; cout< Produksjon:
tutorials konvertert til små bokstaver: TUTORIALS
Konklusjon
Dette avslutter opplæringen vår om tegnfunksjoner i C ++.
I denne opplæringen har vi sett forskjellige funksjoner som tar ett enkelt tegn og deretter klassifiserer dem eller konverterer dem. I de påfølgende veiledningene vil vi diskutere streng og deres funksjoner og klasser relatert til C ++.
=> Oppdag Simple C ++ Training Series her.
Anbefalt lesing