c character classification
Denne vejledning forklarer C ++ karakter- og transformationsfunktioner med eksempler. Nogle vigtige funktioner, der er omfattet, er isdigit, islower, isupper, isalpha osv .:
I vores tidligere tutorial om 'biblioteksfunktioner' så vi de forskellige overskrifter, der giver adskillige funktioner, der fungerer på forskellige datatyper. Overskriften er en sådan overskrift, der indeholder et sæt funktioner, der klassificerer og manipulerer individuelle tegn.
=> Besøg her for at lære C ++ fra bunden.
De funktioner, der er angivet i header, tager et enkelt tegn (int-ækvivalent) som parameter og returnerer en heltalværdi, der enten kan være en boolsk værdi eller en tegnværdi. En værdi 0 (nul) angiver falsk, mens en anden værdi end 0 (ikke-nul) angiver sand.
Disse enkeltkarakterfunktioner kan bruges i programmet ved at inkludere overskriften. Disse funktioner er almindeligt anvendt og accepteret og er yderst nyttige i C ++ programmering til test og transformation eller manipulation af tegn.
I denne vejledning vil vi diskutere de forskellige karakterfunktioner og se, hvordan hver af disse funktioner kan bruges i et program.
Hvad du lærer:
C ++ tegnfunktioner
C ++ karakterfunktioner er de funktioner, der kun tager et enkelt tegn som parameter (castet til int) og returnerer et resultat. Disse kan være klassificeringsfunktioner som isalpha, isalnum, isdigit, islower, isupper osv. For at nævne nogle få og transformere funktioner som toupper og tolower, der omdanner et givet tegn til henholdsvis store og små bogstaver.
I overskriften har vi to typer funktioner defineret som angivet nedenfor.
(i) Karakterklassificeringsfunktioner
Tegnklassifikationsfunktioner bruges til at kontrollere, om det enkelte tegn, der sendes som et argument til funktionen, hører til en bestemt kategori.
Vi har tabuleret karakterklassifikationsfunktionerne inkluderet i overskriften nedenfor:
Lade være med | Funktionsnavn | Funktion Formål |
---|---|---|
7 | islower | Kontrollerer, om et givet tegn er små bogstaver |
1 | isalnum | Kontrollerer, om et givet tegn er alfanumerisk |
to | isalpha | Kontrollerer, om karakteren er alfabetisk |
3 | er tom | Kontrollerer, om tegnet er tomt |
4 | iscntrl | Kontrollerer, om det givne tegn er et kontroltegn |
5 | isdigit | Kontrollerer, om det givne tegn er et decimaltal |
6 | isgraph | Kontrollerer, om det givne tegn har en grafisk repræsentation |
8 | Kontrollerer, om tegnet er et tegn, der kan udskrives | |
9 | ispunct | Kontrollerer, om tegnet er et tegnsætningstegn |
10 | isspace | Kontrollerer, om tegnet er et hvidt mellemrum |
elleve | isupper | Kontrollerer, om det givne tegn er stort |
12 | isxdigit | Kontrollerer, om tegnet er hexadecimalt |
(ii) Karaktertransformerende funktioner
Karaktertransformerende funktioner konverteres mellem sager. Følgende funktioner er inkluderet i filen.
Lade være med | Funktionsnavn | Funktion formål |
---|---|---|
1 | at sænke | Konverterer store bogstaver til små bogstaver |
to | toupper | Konverterer små bogstaver til store bogstaver |
Lad os se hver af karakterfunktionerne (klassificering og transformation) i detaljer. Vi vil også præsentere et simpelt C ++ programmeringseksempel for hver af funktionerne.
Isalnum
Funktionsprototype: int isalnum (int c);
Parameter (er): c => Et tegn, der skal kontrolleres, om det er alfanumerisk eller ikke
Returværdi:
ikke-nul => c er alfanumerisk
0 => c er ikke alfanumerisk
Beskrivelse: Denne funktion kontrollerer, om et givet tegn c er alfanumerisk eller ikke. Ved alfanumerisk betyder det, at et tegn er mellem A (a) -Z (z) eller 0 til 9.
I C ++ er denne funktion landespecifik, og dens definition findes i header.
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; }
Produktion:
Isalpha
Funktionsprototype: int isalpha (int c);
Parameter (er): c-> Tegn, der skal kontrolleres, om det er alfabetisk eller ikke.
Returværdi:
ikke-nul => c er alfabetisk
0 => ikke alfabetisk
Beskrivelse: Denne funktion kontrollerer, om et givet tegn c er alfabetisk, dvs. mellem små og store bogstaver. Ligesom isalnum afhænger denne funktion også af det land, vi bruger.
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; }
Produktion:
Isblank
Funktionsprototype: int isblank (int c);
Parameter (er): c => Tegn, der skal kontrolleres.
Returværdi:
non-zero => tegnet er tomt
0 => tegnet er ikke tomt
Beskrivelse: Denne funktion kontrollerer, om det givne tegn er tomt eller ikke. Tomt tegn er et mellemrumstegn, der bruges til at adskille ord i en tekstlinje.
I C ++ findes den landespecifikke version af isblank-funktionen 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; }
Produktion:
Bemærk den sidste linje i output, der siger “er ikke blank”. Dette skyldes tegnarrayets sidste position, der ikke initialiseres til en værdi, men stadig har en udskrivningsposition. Derfor er det ikke blankt.
Iscntrl
Funktionsprototype: int iscntrl (int c);
Parameter (er): c => Tegn, der skal kontrolleres
Returværdi:
ikke-nul => c er kontroltegn
0 => c er ikke kontroltegn
Beskrivelse: Funktion kontrollerer, om den givne parameter er et kontroltegn. Et kontroltegn er et tegn, der ikke vises i displayet eller ikke indtager en udskrivningsposition.
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; }
Produktion:
Isdigit
Funktionsprototype: int isdigit (int c)
Parameter (er): c => Et tegn, der er kastet til int, hvis værdi skal kontrolleres.
Returværdi: ikke-nul => c er decimaltal
0 => c er ikke et ciffer
Beskrivelse: Denne funktion kontrollerer, om den givne parameter er et decimaltal eller ikke. Et tegn er et decimaltal, hvis dets værdi er mellem 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; }
Produktion:
Isgraph
Funktionsprototype: int isgraph (int c)
Parameter (er): c => Karakter castet int, der kontrolleres ved hjælp af isgraph-funktionen
Returværdi:
ikke-nul => c er en grafisk repræsentation
0 => c er ikke en grafisk repræsentation
Beskrivelse: Funktion kontrollerer, om det givne tegn c er et tegn med grafisk repræsentation. Et tegn, der kan udskrives, er et tegn med grafisk repræsentation.
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; }
Produktion:
Islower
Funktionsprototype: int islower (int c)
Parameter (er): c => Tegn, der skal kontrolleres ved hjælp af islower-funktionen.
Returværdi:
non-zer0 => c er små bogstaver
0 => c er ikke små bogstaver
Beskrivelse: Funktionen islower kontrollerer, om det givne tegn c er lille eller ej.
En lille bogstav er den, der har en af værdierne: 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; }
Produktion:
Funktionsprototype: int sprint (int c)
Parameter (er): c => Tegn, der skal kontrolleres ved hjælp af isprint-funktionen.
Returværdi:
non-zer0 => c kan udskrives
0 => c kan ikke udskrives
Beskrivelse: Funktion isprint kontrollerer, om det givne tegn kan udskrives. Et tegn, der kan udskrives, er det, der indtager en udskrivningsposition 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; }
Produktion:
Ispunct
Funktionsprototype: int ispunct (int c)
Parameter (er): c => Tegn, der skal kontrolleres ved hjælp af ispunct-funktionen.
Returværdi:
non-zer0 => c er et tegnsætningstegn
0 => c er ikke tegnsætningstegn
Beskrivelse: Denne funktion kontrollerer, om det givne tegn er et tegnsætningstegn. Et tegn, der er et grafisk tegn (fra isgraf) og ikke et alfanumerisk (fra isalnum) siges at være et tegnsætningstegn.
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; }
Produktion:
Isspace
Funktionsprototype: int isspace (int c)
Parameter (er): c => Tegn, der skal kontrolleres ved hjælp af isspace-funktionen.
Returværdi:
non-zer0 => c er et hvidt mellemrum
0 => c er ikke hvidt mellemrum
Beskrivelse: Denne funktion kontrollerer, om det givne tegn er hvidt. For 'C' -området er tegn i mellemrum et af 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; }
Produktion:
Isupper
Funktionsprototype: int isupper (int c)
Parameter (er): c => Tegn, der skal kontrolleres ved hjælp af isupper-funktionen.
Returværdi:
non-zer0 => c er stort
0 => c er ikke store bogstaver
Beskrivelse: Funktionerne er lavere kontrollerer, om det givne tegn c er stort eller ej.
Et stort bogstav er det, der har en af værdierne: 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; }
Produktion:
Isxdigit
Funktionsprototype: int isxdigit (int c)
Parameter (er): c => Tegn, der skal kontrolleres ved hjælp af isxdigit-funktionen.
Returværdi:
non-zer0 => c er hexadecimal
0 => c er ikke en hexadecimal
Beskrivelse: Denne funktion kontrollerer, om det givne tegn er et hexadecimalt tal. Gyldige hexadecimale cifre 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; }
Produktion:
at sænke
Funktionsprototype: int tolower (int c)
Parameter (er): c => Tegn, der skal konverteres til små bogstaver.
Returværdi:
returnerer den lavere ækvivalent med c, ellers uændret.
Returværdien er int og kan implicit kastes til char.
Beskrivelse: Dette konverterer det givne tegn c til dets ækvivalente små bogstaver. Hvis konverteringen ikke er mulig for et givet tegn, returneres den uændrede værdi (c).
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(4) = 'STH'; cout< Produktion:
STH konverteret til små bogstaver: sth
toupper
Funktionsprototype: int-toupper (int c)
Parameter (er): c => tegn, der skal konverteres til store bogstaver
Returværdi:
returnerer den øverste ækvivalent med c, ellers uændret.
hvad er den bedste app til download af youtube-videoer
Returværdien er int og kan implicit kastes til char.
Beskrivelse: Dette konverterer det givne tegn c til dets ækvivalente store bogstaver. Hvis en konvertering ikke er mulig for et givet tegn, returneres den uændrede værdi (c).
Eksempel:
#include #include using namespace std; int main() { char ch_alpha(10) = 'tutorials'; cout< Produktion:
tutorials konverteret til små bogstaver: TUTORIALS
Konklusion
Dette afslutter vores tutorial om karakterfunktioner i C ++.
I denne vejledning har vi set forskellige funktioner, der tager et enkelt tegn og derefter enten klassificerer dem eller konverterer dem. I vores efterfølgende tutorials vil vi diskutere streng og deres funktioner og klasser relateret til C ++.
=> Oplev Simple C ++ træningsserien her.
Anbefalet læsning