C++ Char adattípus példákkal

Mi az a Char?

Char egy C++ betűk tárolására tervezett adattípus. A Char egy alfanumerikus karakter rövidítése. Ez egy integrált adattípus, vagyis az érték egész számként kerül tárolásra. Egy karakter 1 bájt memóriaméretet foglal el. Egyetlen karaktert is tárol.

Mi az ASCII?

A char értéket ASCII karakterként értelmezi. Ez hasonló ahhoz, ahogy a logikai értékek igazak vagy hamisak. Az ASCII az American Standard Code for Information Interchange rövidítése. Meghatározza az angol karakterek számként való megjelenítésének sajátos módját.

A számok 0 és 127 között mozognak. Például az „a” karakter megegyezik a 97-es ASCII-kóddal.

Char nyilatkozat

Kijelenteni a char változó be C++, a char kulcsszót használjuk. Ezt a változó nevének kell követnie. A változó a deklaráció időpontjában inicializálható. A változó értékét idézőjelek közé kell tenni.

Szintaxis

Itt van a char deklaráció szintaxisa C++:

char variable-name;

A változónév a változóhoz rendelendő név.

Ha a deklarációkor értéket kell hozzárendelni, akkor ezt a szintaxist használhatja:

char variable-name = 'value';	
  • A változónév a char változó neve.
  • Az érték a char változóhoz rendelendő érték.

Példa 1:

#include <iostream>
using namespace std;
int main() {
	char grade = 'B';
	cout << "I scored a: "<<grade;
	return 0;
}

output:

Char nyilatkozat

Itt van egy képernyőkép a kódról:

Char nyilatkozat

Kód magyarázata:

  1. Az iostream fejlécfájl belefoglalása a kódunkba a funkcióinak használatához.
  2. Az std névtér belefoglalása a kódunkba, hogy az osztályait hívás nélkül használhassuk.
  3. A main() függvény meghívása. A program logikáját hozzá kell adni a függvény törzséhez.
  4. Jelöljön ki egy fokozat nevű karakteres változót. A változóhoz B értéket is rendeltek. Figyelje meg, hogy a változó értéke szimpla idézőjelek között van.
  5. Nyomtassa ki a változó fokozat értékét a konzolon lévő egyéb szövegek mellé.
  6. A programnak értéket kell visszaadnia a sikeres befejezés után.
  7. A main() függvény törzsének vége.

ASCII-érték nyomtatása

Ahogy fentebb említettük, minden karakter ASCII karakterként értelmeződik. Bármely karakter ASCII-értékét megkaphatja. Egyszerűen átadja a karaktert az int() függvénynek. Ezt a folyamatot típusöntésnek nevezik. Mutassuk meg ezt:

Példa 2:

#include <iostream>
using namespace std;
int main() {
	char ch;
	cout << "Enter any character: ";
	cin >> ch;
	cout << "The ASCII Value of " << ch << " is " << int(ch);
	return 0;
}

output:

ASCII-érték nyomtatása

Itt van egy képernyőkép a kódról:

ASCII-érték nyomtatása

Kód magyarázata:

  1. Az iostream fejlécfájl belefoglalása a kódunkba annak érdekében, hogy a funkcióit használhassuk.
  2. Az std névteret bele kell foglalni a kódunkba, hogy az osztályait hívás nélkül használhassuk.
  3. A main() függvény meghívása. A program logikáját hozzá kell adni a függvény törzséhez.
  4. Deklaráljunk egy ch nevű char változót.
  5. Nyomtasson szöveget a konzolra. A szöveg arra kéri a felhasználót, hogy adjon meg egy értéket a ch változóhoz.
  6. Olvassa be a felhasználói bevitelt a billentyűzetről, és tárolja a ch változóban.
  7. Nyomtasson szöveget a konzolra. A szöveg tartalmazza a ch változóhoz megadott karaktert, a karakter ASCII-értékét és egyéb szövegeket.
  8. A programnak értéket kell visszaadnia a sikeres befejezés után.
  9. A main() függvény törzsének vége.

Char érték nyomtatása

Adott egy ASCII érték, a C++ A fordító vissza tudja adni a megfelelő karaktert. Deklarálsz egy char változót, és egész értéket rendelsz hozzá. A rendszer a megfelelő karakterértékre konvertálja.

Példa 3:

#include <iostream>
using namespace std;
int main() {
	char x = 64, y = 66, z = 71;
	cout << x;
	cout << y;
	cout << z;
	return 0;
}

output:

Char érték nyomtatása

Itt van egy képernyőkép a kódról:

Char érték nyomtatása

Kód magyarázata:

  1. Az iostream fejlécfájl belefoglalása a kódba. Ezután hiba nélkül használjuk a funkcióit.
  2. Szerelje be az std névteret a kódba. Az osztályait hívás nélkül fogjuk használni.
  3. A main() függvény meghívása. A program logikájának be kell kerülnie ennek a függvénynek a törzsébe.
  4. Deklaráljunk három char változót: x, y és z. A háromhoz 65, 66 és 67 egész értékeket rendeltek. Ezeket a karakterek ASCII-értékeiként kezeljük.
  5. Nyomtassa ki az x változó értékét a konzolon. Mivel x karakterként volt deklarálva, a 65 ASCII értékű karakter kerül visszaadásra, azaz A.
  6. Nyomtassa ki az y változó értékét a konzolon. Mivel y karakterként volt deklarálva, a 66 ASCII értékű karakter kerül visszaadásra, azaz B.
  7. Nyomtassa ki a z változó értékét a konzolon. Mivel z karakterként volt deklarálva, a 67-es ASCII értékű char kerül visszaadásra, azaz C.
  8. A programnak értéket kell visszaadnia a sikeres befejezés után.
  9. A main() függvény törzsének vége.

Karakterek bevitele

Az std::cin függvényt használhatjuk a felhasználó által a billentyűzeten bevitt karakterek beolvasására. Az std::cin segítségével sok karaktert írhatunk be. A karakterváltozó azonban csak egy karaktert tartalmazhat. Ez azt jelenti, hogy csak az első beírt karakter kerül kibontásra és tárolásra a karakterváltozóban. A többi az std::cin által használt pufferben marad. A kibontásához hívja meg az std::cin fájlt.

Példa 4:

#include <iostream>
using 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;
}

output:

Karakterek bevitele

Itt van egy képernyőkép a kódról:

Karakterek bevitele

Kód magyarázata:

  1. Az iostream fejlécfájl belefoglalása a kódunkba a funkcióinak használatához.
  2. Szerelje be az std névteret a kódunkba, hogy az osztályait hívás nélkül használhassa.
  3. A main() függvény meghívása. A program logikáját hozzá kell adni a függvény törzséhez.
  4. Nyomtasson szöveget a konzolra.
  5. Deklaráljunk egy ch nevű karakterváltozót.
  6. Felhasználói bevitel olvasása a billentyűzetről. A bemenet a ch változóban lesz tárolva. Mivel a felhasználó olyan karaktersorozatot ír be, mint az abc, csak az első karakter, az a kerül tárolásra a ch változóban.
  7. Az első beírt karakter, annak ASCII kódja és egyéb szövegek kinyomtatása a konzolon. Az ASCII kódot a karakteres változó int() függvénynek való átadásával határozzuk meg.
  8. Olvassa el a felhasználó által beírt következő karaktert. A felhasználónak nem kell új karaktert beírnia. Ehelyett a második beírt karaktert fogja olvasni, azaz a b.
  9. A második beírt karakter, annak ASCII kódja és egyéb szövegek kinyomtatása a konzolon. Az ASCII kódot a karakteres változó int() függvénynek való átadásával határozzuk meg.
  10. A programnak értéket kell visszaadnia a sikeres befejezés után.
  11. A main() függvény törzsének vége.

Karakter átalakítása karakterláncra

Számos mód létezik a karakterek konvertálására húrok.

Beszéljük meg őket:

#1: A String osztály által megadott konstruktor használata

Ezt a következő szintaxis használatával lehet megtenni:

string st(int n,char x);

Az n paraméter a generálandó karakterlánc méretét jelöli.

Az x paraméter a karakterláncsá alakítandó karakter.

A függvény egy karakterláncot ad vissza.

Példa 5:

#include<iostream>
#include <string>
using namespace std;
int main() {
	string st(1, 'C');
	cout << "The resulting string is : " << st;
	return 0;
}

output:

Karakter átalakítása karakterláncra

Itt van egy képernyőkép a kódról:

Karakter átalakítása karakterláncra

Kód magyarázata:

  1. Az iostream fejlécfájl belefoglalása a kódunkba a funkcióinak használatához.
  2. Szerelje be a karakterlánc-fejlécfájlt a kódunkba a funkcióinak használatához.
  3. Szerelje be az std névteret a kódunkba, hogy az osztályait hívás nélkül használhassa.
  4. A main() függvény meghívása. A program logikáját hozzá kell adni a függvény törzséhez.
  5. Alakítsa át a „C” karaktert 1 hosszúságú karakterláncsá, és rendelje hozzá a kapott karakterláncot a st változóhoz.
  6. Nyomtassa ki az st karakterlánc értékét a konzolon a többi szöveg mellé.
  7. A programnak értéket kell visszaadnia a sikeres befejezés után.
  8. A main() függvény törzsének vége.

#2) Az std::string használata Operators = és +=

Az = és += operátorok már túl vannak terhelve karakterekkel. A kettő használható egy adott karakter karaktersorozattá alakítására.

Példa 6:

#include<iostream>
#include <string>
using namespace std;
int main() {
	string st;
	char b = 'B';
	st = 'A';
	st += b;
	cout << "The resulting string is : " << st;
	return 0;
}

output:

Karakter átalakítása karakterláncra

Itt van egy képernyőkép a kódról:

Karakter átalakítása karakterláncra

Kód magyarázata:

  1. Szerelje be az iostream fejlécfájlt a kódunkba a funkcióinak használatához.
  2. Szerelje be a karakterlánc-fejlécfájlt a kódunkba a funkcióinak használatához.
  3. Szerelje be az std névteret a kódunkba, hogy az osztályait hívás nélkül használhassa.
  4. A main() függvény meghívása. A program logikáját hozzá kell adni a függvény törzséhez.
  5. Hozzon létre egy st nevű karakterlánc-változót.
  6. Hozzon létre egy b nevű karaktert, amelynek értéke B.
  7. Rendeljen A értéket az st nevű karakterlánchoz.
  8. Használja a += operátort a karakterek karakterláncokká alakításához.
  9. Nyomtassa ki az st karakterlánc értékét a konzolon a többi szöveg mellé.
  10. A programnak értéket kell visszaadnia a sikeres befejezés után.
  11. A main() függvény törzsének vége.

#3: Std::string metódusok használata

Az std::string osztály számos túlterhelt függvényt tartalmaz, amelyek segíthetnek a karakterek karakterláncokká alakításában.

Ezek közé tartozik:

  • visszavet Ez a funkció egy adott karaktert rendel a karakterlánc végéhez. Túl van terhelve a karakterekkel. A következő szintaxist használja:
    void push_back(char ch)
    

    A ch paraméter az a karakter, amelyet karakterláncra kell módosítani.

  • mellékel Egy karakterlánchoz sok másolatot rendel hozzá. A függvény a következő szintaxist veszi fel:
    string& append(size_t n,char ch)
    

    Az n paraméter a karakter hozzáfűzésének időit jelöli.

    A ch paraméter a karakterlánchoz hozzáfűzendő karakter.

  • rendelni Ez a függvény lecseréli a karakterlánc aktuális tartalmát a megadott karakter n példányára. A következő szintaxist alkalmazza:
    string& assign(size_t n,char ch);

    Az n paraméter a karakter teljes példányszámát jelöli.

    A ch paraméter a karakterláncba másolandó karakter.

  • helyezze Az insert függvény egy karakter n példányát szúrja be a karakterlánc kezdőpozíciójába, az argumentumokban meghatározottak szerint. A következő szintaxist veszi igénybe:
    string& insert(size_t p,size_t n,char ch);

    A p paraméter a kezdettől fogva azt a pozíciót jelöli, ahová a karaktereket be kell illeszteni.

    Az n paraméter a karakter teljes példányszámát jelöli.

    A ch paraméter a karakterláncba beillesztendő karakter.

Példa 7:

#include<iostream>
#include <string>
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;
}

output:

Karakter átalakítása karakterláncra

Itt van egy képernyőkép a kódról:

Karakter átalakítása karakterláncra

  1. Szerelje be az iostream fejlécfájlt a kódunkba a funkcióinak használatához.
  2. Szerelje be a karakterlánc-fejlécfájlt a kódunkba a funkcióinak használatához.
  3. Szerelje be az std névteret a kódunkba, hogy az osztályait hívás nélkül használhassa.
  4. A main() függvény meghívása. A program logikáját hozzá kell adni a függvény törzséhez.
  5. Hozzon létre egy st nevű karakterlánc-változót.
  6. Rendelje hozzá az A karaktert a karakterlánc végéhez.
  7. Nyomtassa ki az st karakterlánc értékét a konzolon a többi szöveg mellé. Az endl (végsor) a kurzort a következő sorra mozgatja.
  8. Állítsa az st karakterlánc értékét üresre.
  9. Rendeljen egyetlen C karaktert az st nevű karakterlánchoz.
  10. Nyomtassa ki az st karakterlánc értékét a konzolon a többi szöveg mellé. Az endl (végsor) a kurzort a következő sorra mozgatja.
  11. Állítsa az st karakterlánc értékét üresre.
  12. Cserélje le az st karakterlánc tartalmát egyetlen D karakterre.
  13. Nyomtassa ki az st karakterlánc értékét a konzolon a többi szöveg mellé. Az endl (végsor) a kurzort a következő sorra mozgatja.
  14. Szúrjon be egyetlen E karaktert az st nevű karakterláncba az első indexéből.
  15. Nyomtassa ki az st karakterlánc értékét a konzolon a többi szöveg mellé. Az endl (végsor) a kurzort a következő sorra mozgatja.
  16. A programnak értéket kell visszaadnia a sikeres befejezés után.
  17. A main() függvény törzsének vége.

#4: Std::stringstream használata

Ha ezt az osztályt szeretné használni a karakterek karakterláncsá alakításához, illessze be a karaktert az adatfolyamba.

A karakterláncba íródnak.

Példa 8:

#include<iostream>
#include <string>
#include <sstream>

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;
}

output:

Karakter átalakítása karakterláncra

Itt van egy képernyőkép a kódról:

Karakter átalakítása karakterláncra

Kód magyarázata:

  1. Szerelje be az iostream fejlécfájlt a kódunkba a funkcióinak használatához.
  2. Szerelje be a karakterlánc-fejlécfájlt a kódunkba a funkcióinak használatához.
  3. Szerelje be a stream fejlécfájlt a kódunkba a funkcióinak használatához.
  4. Szerelje be az std névteret a kódunkba, hogy az osztályait hívás nélkül használhassa.
  5. A main() függvény meghívása. A program logikáját hozzá kell adni a függvény törzséhez.
  6. Hozzon létre egy st nevű karakterlánc-változót.
  7. Hozzon létre egy myst nevű adatfolyam-változót.
  8. Szúrja be az A karaktert a myst nevű adatfolyam objektumba.
  9. Konvertálja a stream objektumot karakterláncká.
  10. Nyomtassa ki az st karakterlánc értékét a konzolon a többi szöveg mellé. Az endl (végsor) a kurzort a következő sorra mozgatja.
  11. A programnak értéket kell visszaadnia a sikeres befejezés után.
  12. A main() függvény törzsének vége.

Összegzésként

  • A char egy C++ a betűk tárolására használt adattípus.
  • C++ A Char egy integrált adattípus, vagyis az érték egész számként kerül tárolásra.
  • 1 bájt memóriaméretet foglal el.
  • C++ A Char csak egyetlen karaktert tárol.
  • A karakterértékek ASCII karakterekként kerülnek értelmezésre.
  • Az ASCII az American Standard Code for Information Interchange rövidítése.
  • Meghatározza az angol karakterek számok formájában történő megjelenítésének sajátos módját.
  • Egy karakter ASCII értékének megtekintéséhez átadjuk az int() függvénynek.
  • Az ASCII-érték megfelelő char értékének megtekintéséhez az ASCII-t karakterként definiáljuk.