Mikä on Char?
Char on C ++ -tietotyyppi, joka on tarkoitettu kirjainten tallentamiseen. Char on lyhenne merkistä. Se on kiinteä tietotyyppi, eli arvo tallennetaan kokonaislukuna. Merkin muistikoko on 1 tavu. Se tallentaa myös yhden merkin.
Tässä C ++ -opetusohjelmassa opit:
- Mikä on Char?
- Mikä on ASCII?
- Char-julistus
- Syntaksi:
- ASCII-arvon tulostaminen
- Tulostusmerkin arvo
- Merkkien syöttäminen
- Muuntaa merkin merkkijonoksi
Mikä on ASCII?
Char-arvo tulkitaan ASCII-merkkinä. Tämä on samanlainen kuin Boolen arvojen tulkitaan olevan tosi tai väärä. ASCII on lyhenne sanoista American Standard Code for Information Interchange. Se määrittelee tietyn tavan edustaa englantilaisia merkkejä numeroina.
Numerot vaihtelevat välillä 0 ja 127. Esimerkiksi merkki "a" vastaa ASCII-koodia 97.
Char-julistus
Jos ilmoitamme char-muuttujan C ++: ssa, käytämme char-avainsanaa. Tämän jälkeen tulee olla muuttujan nimi. Muuttuja voidaan alustaa ilmoituksen tekohetkellä. Muuttujan arvon tulee olla lainausmerkeissä.
Syntaksi:
Tässä on syntaksi char-ilmoitukselle C ++:
char variable-name;
Muuttujan nimi on muuttujalle annettava nimi.
Jos arvo on määritettävä ilmoituksen tekohetkellä, voit käyttää tätä syntaksia:
char variable-name = 'value';
- Muuttujan nimi on char-muuttujan nimi.
- Arvo on char-muuttujalle määritettävä arvo.
Esimerkki 1:
#includeusing namespace std;int main() {char grade = 'B';cout << "I scored a: "< Tuotos:
Tässä on kuvakaappaus koodista:
Koodin selitys:
- Iostream-otsikkotiedoston sisällyttäminen koodiin käyttämään sen toimintoja.
- Sisältää standardin nimitilan koodissamme, jotta sen luokkia voidaan käyttää sitä kutsumatta.
- Päätoiminnon () kutsuminen. Ohjelmalogiikka tulisi lisätä tämän toiminnon runkoon.
- Ilmoita merkkimuuttuja nimeltä grade. Muuttujalle on myös määritetty arvo B. Huomaa, että muuttujan arvo on suljettu lainausmerkkeihin.
- Tulosta muuttujan arvosana konsolin muun tekstin viereen.
- Ohjelman on palautettava arvo, kun se on suoritettu onnistuneesti.
- Pääfunktion () rungon pää.
ASCII-arvon tulostaminen
Kuten edellä todettiin, kukin merkki tulkitaan ASCII-merkiksi. Voit saada minkä tahansa merkin ASCII-arvon. Voit siirtää merkin yksinkertaisesti int () -funktiolle. Tätä prosessia kutsutaan tyyppivaluksi. Osoitetaan tämä:
Esimerkki 2:
#includeusing namespace std;int main() {char ch;cout << "Enter any character: ";cin >> ch;cout << "The ASCII Value of " << ch << " is " << int(ch);return 0;} Tuotos:
![]()
Tässä on kuvakaappaus koodista:
Koodin selitys:
- Iostream-otsikkotiedoston sisällyttäminen koodiin, jotta sen toimintoja voidaan käyttää.
- Sisältää standardin nimitilan koodissamme, jotta sen luokkia voidaan käyttää kutsumatta sitä.
- Päätoiminnon () kutsuminen. Ohjelmalogiikka tulisi lisätä tämän toiminnon runkoon.
- Ilmoita char-muuttuja nimeltä ch.
- Tulosta tekstiä konsolille. Teksti pyytää käyttäjää syöttämään arvon muuttujalle ch.
- Lue käyttäjän syöttämä näppäimistö ja tallenna se muuttujaan ch.
- Tulosta tekstiä konsolille. Teksti sisältää muuttujalle ch kirjoittamasi merkin, tämän merkin ASCII-arvon ja muun tekstin.
- Ohjelman on palautettava arvo, kun se on suoritettu onnistuneesti.
- Pääfunktion () rungon pää.
Tulostusmerkin arvo
Annettuaan ASCII-arvon C ++-kääntäjä voi palauttaa vastaavan merkin. Ilmoitat muuttujan char ja määrität sille kokonaisluvun. Se muunnetaan vastaavaksi merkkiarvoksi.
Esimerkki 3:
#includeusing namespace std;int main() {char x = 64, y = 66, z = 71;cout << x;cout << y;cout << z;return 0;} Tuotos:
Tässä on kuvakaappaus koodista:
Koodin selitys:
- Sisältää iostream-otsikkotiedoston koodiin. Käytämme sitten sen toimintoja saamatta virheitä.
- Sisällytä vakio nimitila koodiin. Käytämme sen luokkia kutsumatta sitä.
- Päätoiminnon () kutsuminen. Ohjelmalogiikan tulisi mennä tämän toiminnon runkoon.
- Ilmoitetaan kolme merkkimuuttujaa x, y ja z. Kolmelle on annettu kokonaislukuarvot 65, 66 ja 67. Näitä käsitellään merkkien ASCII-arvoina.
- Tulosta muuttujan x arvo konsolille. Koska x on ilmoitettu merkiksi, palautetaan hiili, jonka ASCII-arvo on 65, eli A.
- Tulosta muuttujan y arvo konsolille. Koska y ilmoitettiin hiileeksi, palautetaan hiili, jonka ASCII-arvo on 66, eli B.
- Tulosta muuttujan z arvo konsolille. Koska z julistettiin hiileeksi, palautetaan hiili, jonka ASCII-arvo on 67, ts. C.
- Ohjelman on palautettava arvo, kun se on suoritettu onnistuneesti.
- Pääfunktion () rungon pää.
Merkkien syöttäminen
Voimme käyttää std :: cin-toimintoa lukemaan merkin, jonka käyttäjä on kirjoittanut näppäimistön kautta. Std :: cin antaa sinun syöttää useita merkkejä. Merkkimuuttujassa voi kuitenkin olla vain yksi merkki. Tämä tarkoittaa, että vain ensimmäinen syötetty merkki erotetaan ja tallennetaan merkkimuuttujaan. Loput jäävät std :: cin: n käyttämään puskuriin. Voit purkaa sen soittamalla seuraavia osoitteita std :: cin.
Esimerkki 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;} Tuotos:
![]()
Tässä on kuvakaappaus koodista:
![]()
Koodin selitys:
- Iostream-otsikkotiedoston sisällyttäminen koodiin käyttämään sen toimintoja.
- Sisällytä vakio nimitila koodissamme käyttääksesi luokkia sitä kutsumatta.
- Päätoiminnon () kutsuminen. Ohjelmalogiikka tulisi lisätä tämän toiminnon runkoon.
- Tulosta tekstiä konsolille.
- Ilmoita merkkimuuttuja nimeltä ch.
- Lue käyttäjän syöttämät tiedot näppäimistöltä. Tulo tallennetaan muuttujaan ch. Koska käyttäjä kirjoittaa merkkijonon kuten abc, vain ensimmäinen merkki a tallennetaan muuttujaan ch.
- Ensimmäisen syötetyn merkin, sen ASCII-koodin ja muun tekstin tulostaminen konsolille. ASCII-koodi määritetään siirtämällä merkkimuuttuja int () -funktiolle.
- Lue seuraava käyttäjän kirjoittama merkki. Käyttäjää ei vaadita syöttämään uutta merkkiä. Sen sijaan se lukee toisen syötetyn merkin eli b.
- Tulostetaan toinen syötetty merkki, sen ASCII-koodi ja muu teksti konsolille. ASCII-koodi määritetään siirtämällä merkkimuuttuja int () -funktiolle.
- Ohjelman on palautettava arvo, kun se on suoritettu onnistuneesti.
- Pääfunktion () rungon pää.
Muuntaa merkin merkkijonoksi
On olemassa useita tapoja, joilla voimme muuntaa merkit merkkijonoiksi.
Keskustellaan heistä:
# 1: String-luokan antaman konstruktorin käyttö
Tämä voidaan tehdä seuraavalla syntaksilla:
string st(int n,char x);Parametri n tarkoittaa muodostettavan merkkijonon kokoa.
Parametri x on merkkijonoksi muunnettava merkki.
Funktio palauttaa merkkijonon.
Esimerkki 5:
#include#include using namespace std;int main() {string st(1, 'C');cout << "The resulting string is : " << st;return 0;} Tuotos:
Tässä on kuvakaappaus koodista:
Koodin selitys:
- Iostream-otsikkotiedoston sisällyttäminen koodiin käyttämään sen toimintoja.
- Sisällytä merkkijonotunnistetiedosto koodiin käyttääksesi sen toimintoja.
- Sisällytä vakio nimitila koodissamme käyttääksesi luokkia sitä kutsumatta.
- Päätoiminnon () kutsuminen. Ohjelmalogiikka tulisi lisätä tämän toiminnon runkoon.
- Muunna merkki "C" 1-pituiseksi merkkijonoksi ja määritä tuloksena oleva merkkijono muuttujalle st.
- Tulosta merkkijonon arvo konsolille muun tekstin viereen.
- Ohjelman on palautettava arvo, kun se on suoritettu onnistuneesti.
- Pääfunktion () rungon pää.
# 2) Käyttämällä std :: string Operators = ja + =
Operaattorit = ja + = ovat jo ylikuormitettu merkeillä. Näitä kahta voidaan käyttää muuntaa tietty merkki merkkijonoksi.
Esimerkki 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;} Tuotos:
Tässä on kuvakaappaus koodista:
Koodin selitys:
- Sisällytä iostream-otsikkotiedosto koodiin käyttääksesi sen toimintoja.
- Sisällytä merkkijonotunnistetiedosto koodiin käyttääksesi sen toimintoja.
- Sisällytä vakio nimitila koodissamme käyttääksesi luokkia sitä kutsumatta.
- Päätoiminnon () kutsuminen. Ohjelmalogiikka tulisi lisätä tämän toiminnon runkoon.
- Luo merkkijonomuuttuja nimeltä st.
- Luo hahmo nimeltä b, jonka arvo on B.
- Määritä arvolle A merkkijonolle st.
- Muunna merkit merkkijonoksi + = -operaattorin avulla.
- Tulosta merkkijonon arvo konsolille muun tekstin viereen.
- Ohjelman on palautettava arvo, kun se on suoritettu onnistuneesti.
- Pääfunktion () rungon pää.
# 3: Käyttämällä std :: string -menetelmiä
Std :: string -luokassa on monia ylikuormitettuja toimintoja, joiden avulla voit muuntaa merkit merkkijonoiksi.
Ne sisältävät:
- työnnä takaisin
Tämä toiminto määrittää tietyn merkin merkkijonon päähän. Se on ylikuormitettu merkkejä varten.
Se tarvitsee seuraavan syntaksin:
void push_back(char ch)Parametri ch on merkki, joka on muutettava merkkijonoksi.
- liitä
Se merkitsee merkkijonolle useita kopioita tietystä merkistä.
Toiminto ottaa seuraavan syntaksin:
string& append(size_t n,char ch)Parametri n tarkoittaa aikoja, jolloin merkki lisätään.
Parametri ch on merkkijonoon liitettävä merkki.
- antaa
Tämä toiminto korvaa merkkijonon nykyisen sisällön n: llä kopiota määritetystä merkistä.
Se tarvitsee seuraavan syntaksin:
string& assign(size_t n,char ch);Parametri n tarkoittaa merkin kopioiden kokonaismäärää.
Parametri ch on merkkijonoon kopioitava merkki.
- lisää
Insert-funktio lisää n kopiota merkistä merkkijonon alkupisteeseen argumenteissa määritellyllä tavalla.
Se tarvitsee seuraavan syntaksin:
string& insert(size_t p,size_t n,char ch);P-parametri osoittaa alusta alkaen sijainnin, johon merkit lisätään.
Parametri n tarkoittaa merkin kopioiden kokonaismäärää.
Parametri ch on merkkijonoon lisättävä merkki.
Esimerkki 7:
#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;} Tuotos:
Tässä on kuvakaappaus koodista:
- Sisällytä iostream-otsikkotiedosto koodiin käyttääksesi sen toimintoja.
- Sisällytä merkkijonotunnistetiedosto koodiin käyttääksesi sen toimintoja.
- Sisällytä vakio nimitila koodissamme käyttääksesi luokkia sitä kutsumatta.
- Päätoiminnon () kutsuminen. Ohjelmalogiikka tulisi lisätä tämän toiminnon runkoon.
- Luo merkkijonomuuttuja nimeltä st.
- Määritä merkki A merkkijonon loppuun.
- Tulosta merkkijonon arvo konsolille muun tekstin viereen. Endl (loppulinja) siirtää kohdistimen seuraavalle riville.
- Aseta merkkijonon st arvoksi tyhjä.
- Määritä yksi merkki C merkkijonoon nimeltä st.
- Tulosta merkkijonon arvo konsolille muun tekstin viereen. Endl (loppulinja) siirtää kohdistimen seuraavalle riville.
- Aseta merkkijonon st arvoksi tyhjä.
- Korvaa merkkijonon sisältö yhdellä merkillä D.
- Tulosta merkkijonon arvo konsolille muun tekstin viereen. Endl (loppulinja) siirtää kohdistimen seuraavalle riville.
- Lisää yksi merkki E merkkijonoon nimeltä st sen ensimmäisestä hakemistosta.
- Tulosta merkkijonon arvo konsolille muun tekstin viereen. Endl (loppulinja) siirtää kohdistimen seuraavalle riville.
- Ohjelman on palautettava arvo, kun se on suoritettu onnistuneesti.
- Pääfunktion () rungon pää.
# 4: Käyttämällä standardia :: stringstream
Jos haluat muuntaa merkin merkkijonoksi tällä luokalla, lisää merkki virtaan.
Ne kirjoitetaan merkkijonoon.
Esimerkki 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;} Tuotos:
Tässä on kuvakaappaus koodista:
Koodin selitys:
- Sisällytä iostream-otsikkotiedosto koodiin käyttääksesi sen toimintoja.
- Sisällytä merkkijonotunnistetiedosto koodiin käyttääksesi sen toimintoja.
- Sisällytä sstream-otsikkotiedosto koodiin käyttääksesi sen toimintoja.
- Sisällytä vakio nimitila koodissamme käyttääksesi luokkia sitä kutsumatta.
- Päätoiminnon () kutsuminen. Ohjelmalogiikka tulisi lisätä tämän toiminnon runkoon.
- Luo merkkijonomuuttuja nimeltä st.
- Luo virtamuuttuja nimeltä myst.
- Lisää merkki A virtaobjektiin nimeltä myst.
- Muunna virtaobjekti merkkijonoksi.
- Tulosta merkkijonon arvo konsolille muun tekstin viereen. Endl (loppulinja) siirtää kohdistimen seuraavalle riville.
- Ohjelman on palautettava arvo, kun se on suoritettu onnistuneesti.
- Pääfunktion () rungon pää.
Yhteenveto:
- Char on C ++ -tietotyyppi, jota käytetään kirjainten tallentamiseen.
- C ++ Char on kiinteä tietotyyppi, eli arvo tallennetaan kokonaislukuna.
- Se vie 1 tavun muistikoon.
- C ++ Char tallentaa vain yhden merkin.
- Char-arvot tulkitaan ASCII-merkkeinä.
- ASCII on lyhenne sanoista American Standard Code for Information Interchange.
- Siinä mainitaan tietty tapa edustaa englantilaisia merkkejä numeroina.
- Jos haluat nähdä merkin ASCII-arvon, välitämme sen funktiolle int ().
- Jos haluat nähdä vastaavan ASCII-arvon char-arvon, määritämme ASCII-merkin.