Kaj je Char?
Char je podatkovni tip C ++, namenjen shranjevanju črk. Char je kratica za lik. Je integralni podatkovni tip, kar pomeni, da je vrednost shranjena kot celo število. Znak zavzame velikost pomnilnika 1 bajt. Shrani tudi en sam znak.
V tej vadnici C ++ boste izvedeli:
- Kaj je Char?
- Kaj je ASCII?
- Char izjava
- Sintaksa:
- Tiskanje vrednosti ASCII
- Tiskanje vrednosti Char
- Vnos znakov
- Pretvorba znaka v niz
Kaj je ASCII?
Vrednost char se razlaga kot znak ASCII. To je podobno, kot se logične vrednosti razlagajo kot resnične ali napačne. ASCII je kratica ameriške standardne kode za izmenjavo informacij. Določa poseben način predstavitve angleških znakov kot številk.
Številke se gibljejo med 0 in 127. Znak "a" je na primer enakovreden kodi ASCII 97.
Char izjava
Za razglasitev spremenljivke char v jeziku C ++ uporabimo ključno besedo char. Temu naj sledi ime spremenljivke. Spremenljivko je mogoče inicializirati v času izjave. Vrednost spremenljivke mora biti zaprta v enojne narekovaje.
Sintaksa:
Tu je sintaksa za izjavo char v jeziku C ++:
char variable-name;
Ime spremenljivke je ime, ki bo dodeljeno spremenljivki.
Če bo vrednost dodeljena v času deklaracije, lahko uporabite to sintakso:
char variable-name = 'value';
- Ime spremenljivke je ime spremenljivke char.
- Vrednost je vrednost, ki se dodeli spremenljivki char.
Primer 1:
#includeusing namespace std;int main() {char grade = 'B';cout << "I scored a: "< Izhod:
Tu je posnetek zaslona kode:
Razlaga kode:
- Vključite datoteko glave iostream v našo kodo za uporabo njenih funkcij.
- Vključitev imenskega prostora std v našo kodo, da lahko uporabljamo njegove razrede, ne da bi ga poklicali.
- Klic glavne () funkcije. V telo te funkcije je treba dodati programsko logiko.
- Navedite spremenljivko znaka z imenom grade. Spremenljivki je bila dodeljena tudi vrednost B. Upoštevajte, da je vrednost spremenljivke zaprta v enojne narekovaje.
- Na konzolo natisnite vrednost spremenljivke grade skupaj z drugim besedilom.
- Program mora po uspešnem zaključku vrniti vrednost.
- Konec telesa glavne () funkcije.
Tiskanje vrednosti ASCII
Kot je navedeno zgoraj, se vsak znak razlaga kot znak ASCII. Lahko dobite vrednost ASCII katerega koli znaka. Znak preprosto prenesete v funkcijo int (). Ta postopek se imenuje litje tipa. Pokažimo to:
2. primer:
#includeusing namespace std;int main() {char ch;cout << "Enter any character: ";cin >> ch;cout << "The ASCII Value of " << ch << " is " << int(ch);return 0;} Izhod:
Tu je posnetek zaslona kode:
Razlaga kode:
- Vključite datoteko glave iostream v našo kodo, da lahko uporabljate njene funkcije.
- Vključitev imenskega prostora std v našo kodo, da lahko uporabljamo njegove razrede, ne da bi ga poklicali.
- Klic glavne () funkcije. V telo te funkcije je treba dodati programsko logiko.
- Navedite spremenljivko char z imenom ch.
- Na konzolo natisnite nekaj besedila. Besedilo od uporabnika zahteva, da vnese vrednost za spremenljivko ch.
- Preberite uporabniški vnos s tipkovnice in ga shranite v spremenljivko ch.
- Na konzolo natisnite nekaj besedila. Besedilo bo vsebovalo znak, ki ste ga vnesli za spremenljivko ch, vrednost ASCII tega znaka in drugo besedilo.
- Program mora po uspešnem zaključku vrniti vrednost.
- Konec telesa glavne () funkcije.
Tiskanje vrednosti Char
Glede na vrednost ASCII lahko prevajalnik C ++ vrne ustrezen znak. Deklarirate spremenljivko char in ji dodelite celoštevilčno vrednost. Pretvori se v ustrezno vrednost znaka.
3. primer:
#includeusing namespace std;int main() {char x = 64, y = 66, z = 71;cout << x;cout << y;cout << z;return 0;} Izhod:
Tu je posnetek zaslona kode:
Razlaga kode:
- Vključitev glave datoteke iostream v kodo. Nato bomo njegove funkcije uporabljali brez napak.
- V kodo vključite imenski prostor std. Njegove razrede bomo uporabili, ne da bi ga poklicali.
- Klic glavne () funkcije. Programska logika bi morala iti v telo te funkcije.
- Navedite tri spremenljivke char x, y in z. Tem trem so bile dodeljene celoštevilske vrednosti 65, 66 in 67. Te bodo obravnavane kot vrednosti ASCII za znake.
- Na konzolo natisnite vrednost spremenljivke x. Ker je bil x razglašen za znak, bo vrnjen znak z vrednostjo ASCII 65, to je A.
- Na konzolo natisnite vrednost spremenljivke y. Ker je bil y razglašen za znak, bo vrnjen znak z vrednostjo ASCII 66, to je B.
- Na konzoli natisnite vrednost spremenljivke z. Ker je bil z razglašen za char, bo vrnjen znak z vrednostjo ASCII 67, to je C.
- Program mora po uspešnem zaključku vrniti vrednost.
- Konec telesa glavne () funkcije.
Vnos znakov
S funkcijo std :: cin lahko beremo znak, ki ga uporabnik vnese prek tipkovnice. Std :: cin vam bo omogočil vnos številnih znakov. Vendar lahko spremenljivka znakov vsebuje samo en znak. To pomeni, da bo samo prvi vneseni znak izvlečen in shranjen v spremenljivko znakov. Ostalo bo ostalo v vmesnem pomnilniku, ki ga uporablja std :: cin. Če ga želite izvleči, pozneje pokličite std :: cin.
Primer 4:
#includeusing namespace std;int main() {cout << "Type a sequence of characters: ";char ch;cin >> ch;cout <<"The ASCII code of "<< ch << " is "<< int(ch) << '\n';cin >> ch;cout <<"The ASCII code of " << ch << " is "<< int(ch) << '\n';return 0;} Izhod:
Tu je posnetek zaslona kode:
Razlaga kode:
- Vključite datoteko glave iostream v našo kodo za uporabo njenih funkcij.
- V našo kodo vključite imenski prostor std, da lahko uporabljate njegove razrede, ne da bi ga poklicali.
- Klic glavne () funkcije. V telo te funkcije je treba dodati programsko logiko.
- Na konzolo natisnite nekaj besedila.
- Navedite spremenljivko znaka z imenom ch.
- Preberite uporabniški vnos s tipkovnice. Vnos bo shranjen v spremenljivki ch. Ker bo uporabnik vpisal zaporedje znakov, kot je abc, bo v spremenljivko ch shranjen le prvi znak a.
- Tiskanje prvega vnesenega znaka, njegove kode ASCII in drugega besedila na konzoli. Koda ASCII se določi s posredovanjem spremenljivke znakov funkciji int ().
- Preberite naslednji znak, ki ga je vnesel uporabnik. Uporabnik ne bo moral vnesti novega znaka. Namesto tega bo prebral drugi vneseni znak, to je b.
- Tiskanje drugega vnesenega znaka, njegove kode ASCII in drugega besedila na konzoli. Koda ASCII se določi s posredovanjem spremenljivke znakov funkciji int ().
- Program mora po uspešnem zaključku vrniti vrednost.
- Konec telesa glavne () funkcije.
Pretvorba znaka v niz
Obstaja več načinov, s katerimi lahko pretvorimo znake v nize.
Pogovorimo se o njih:
# 1: Uporaba konstruktorja, ki ga poda razred niza
To lahko storite z naslednjo sintakso:
string st(int n,char x);Parameter n označuje velikost niza, ki ga je treba ustvariti.
Parameter x je znak za pretvorbo v niz.
Funkcija vrne niz.
Primer 5:
#include#include using namespace std;int main() {string st(1, 'C');cout << "The resulting string is : " << st;return 0;} Izhod:
Tu je posnetek zaslona kode:
Razlaga kode:
- Vključite datoteko glave iostream v našo kodo za uporabo njenih funkcij.
- V našo kodo vključite datoteko z glavo niza, da boste lahko uporabljali njene funkcije.
- V našo kodo vključite imenski prostor std, da lahko uporabljate njegove razrede, ne da bi ga poklicali.
- Klic glavne () funkcije. V telo te funkcije je treba dodati programsko logiko.
- Pretvorite znak "C" v niz dolžine 1 in nastali niz dodelite spremenljivki st.
- Natisnite vrednost niza st na konzolo skupaj z drugim besedilom.
- Program mora po uspešnem zaključku vrniti vrednost.
- Konec telesa glavne () funkcije.
# 2) Uporaba std :: string Operators = in + =
Operatorja = in + = sta že preobremenjena z znaki. Oboje lahko uporabimo za pretvorbo določenega znaka v niz.
Primer 6:
#include#include using namespace std;int main() {string st;char b = 'B';st = 'A';st += b;cout << "The resulting string is : " << st;return 0;} Izhod:
Tu je posnetek zaslona kode:
Razlaga kode:
- V našo kodo vključite datoteko glave iostream, da boste lahko uporabljali njene funkcije.
- V našo kodo vključite datoteko z glavo niza, da boste lahko uporabljali njene funkcije.
- V našo kodo vključite imenski prostor std, da lahko uporabljate njegove razrede, ne da bi ga poklicali.
- Klic glavne () funkcije. V telo te funkcije je treba dodati programsko logiko.
- Ustvari nizno spremenljivko z imenom st.
- Ustvari znak z imenom b z vrednostjo B.
- Stringu z imenom st. Dodelite vrednost A
- Uporabite operator + = za pretvorbo znakov v niz.
- Natisnite vrednost niza st na konzolo skupaj z drugim besedilom.
- Program mora po uspešnem zaključku vrniti vrednost.
- Konec telesa glavne () funkcije.
# 3: Uporaba metod std :: string
Razred std :: string ima veliko preobremenjenih funkcij, ki vam lahko pomagajo pretvoriti znake v nize.
Vključujejo:
- porini nazaj
Ta funkcija koncu niza dodeli določen znak. Znaki so preobremenjeni.
Zavzame naslednjo sintakso:
void push_back(char ch)Parameter ch je znak, ki ga je treba spremeniti v niz.
- priloži
Nizu dodeli veliko kopij določenega znaka.
Funkcija ima naslednjo sintakso:
string& append(size_t n,char ch)Parameter n označuje čase dodajanja znaka.
Parameter ch je znak, ki se doda nizu.
- dodeliti
Ta funkcija nadomesti trenutno vsebino niza z n kopijami določenega znaka.
Zavzame naslednjo sintakso:
string& assign(size_t n,char ch);Parameter n označuje skupno število kopij znaka.
Parameter ch je znak, ki ga želite kopirati v niz.
- vstavi
Funkcija za vstavljanje vstavi n kopij znaka na začetni položaj niza, kot je določeno v argumentih.
Zavzame naslednjo sintakso:
string& insert(size_t p,size_t n,char ch);Parameter p označuje položaj od začetka, kamor bodo vstavljeni znaki.
Parameter n označuje skupno število kopij znaka.
Parameter ch je znak, ki ga je treba vstaviti v niz.
7. primer:
#include#include using namespace std;int main() {string st;st.push_back('A');cout << "push_back A returns : " << st << endl;st = "";st.append(1, 'C');cout << "append C returns : " << st << endl;st = "";st.assign(1, 'D');cout << "assign D returns : " << st << endl;st.insert(0, 1, 'E');cout << "insert single character returns : " << st << endl;return 0;} Izhod:
Tu je posnetek zaslona kode:
- V našo kodo vključite datoteko glave iostream, da boste lahko uporabljali njene funkcije.
- V našo kodo vključite datoteko z glavo niza, da boste lahko uporabljali njene funkcije.
- V našo kodo vključite imenski prostor std, da lahko uporabljate njegove razrede, ne da bi ga poklicali.
- Klic glavne () funkcije. V telo te funkcije je treba dodati programsko logiko.
- Ustvari nizno spremenljivko z imenom st.
- Konec niza dodelite znak A.
- Natisnite vrednost niza st na konzolo skupaj z drugim besedilom. Endl (končna vrstica) premakne kurzor v naslednjo vrstico.
- Vrednost niza st nastavite na prazno.
- Stringu z imenom st. Dodelite en znak C
- Natisnite vrednost niza st na konzolo skupaj z drugim besedilom. Endl (končna vrstica) premakne kurzor v naslednjo vrstico.
- Vrednost niza st nastavite na prazno.
- Vsebino za niz st zamenjajte z enim znakom D.
- Natisnite vrednost niza st na konzolo skupaj z drugim besedilom. Endl (končna vrstica) premakne kurzor v naslednjo vrstico.
- V niz z imenom st vstavite en znak E iz prvega indeksa.
- Natisnite vrednost niza st na konzolo skupaj z drugim besedilom. Endl (končna vrstica) premakne kurzor v naslednjo vrstico.
- Program mora po uspešnem zaključku vrniti vrednost.
- Konec telesa glavne () funkcije.
# 4: Uporaba std :: stringstream
Če želite uporabiti ta razred za pretvorbo znaka v niz, ga vstavite v tok.
Zapisani bodo v niz.
Primer 8:
#include#include #include using namespace std;int main() {string st;stringstream myst;myst << 'A';myst >> st;cout << "The conversion of the single character returns the string: " << st;return 0;} Izhod:
Tu je posnetek zaslona kode:
Razlaga kode:
- V našo kodo vključite datoteko glave iostream, da boste lahko uporabljali njene funkcije.
- V našo kodo vključite datoteko z glavo niza, da boste lahko uporabljali njene funkcije.
- V našo kodo vključite datoteko glave sstream, da boste lahko uporabljali njene funkcije.
- V našo kodo vključite imenski prostor std, da lahko uporabljate njegove razrede, ne da bi ga poklicali.
- Klic glavne () funkcije. V telo te funkcije je treba dodati programsko logiko.
- Ustvari nizno spremenljivko z imenom st.
- Ustvari spremenljivko toka z imenom myst.
- Vstavite znak A v predmet toka z imenom myst.
- Pretvorite predmet toka v niz.
- Natisnite vrednost niza st na konzolo skupaj z drugim besedilom. Endl (končna vrstica) premakne kurzor v naslednjo vrstico.
- Program mora po uspešnem zaključku vrniti vrednost.
- Konec telesa glavne () funkcije.
Povzetek:
- Znak je podatkovni tip C ++, ki se uporablja za shranjevanje črk.
- C ++ Char je integralni podatkovni tip, kar pomeni, da je vrednost shranjena kot celo število.
- Zaseda velikost pomnilnika 1 bajt.
- C ++ Char shrani samo en znak.
- Vrednosti znakov se razlagajo kot znaki ASCII.
- ASCII je kratica ameriške standardne kode za izmenjavo informacij.
- Navaja poseben način predstavitve angleških znakov v obliki števil.
- Če si želimo ogledati vrednost ASCII znaka, ga posredujemo v funkcijo int ().
- Za prikaz ustrezne vrednosti znaka vrednosti ASCII določimo ASCII kot znak.