Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

C++ Char-gegevenstype met voorbeelden

Wat is Char?

Char is een C++-gegevenstype dat is ontworpen voor de opslag van letters. Char is een acroniem voor een personage. Het is een integraal gegevenstype, wat betekent dat de waarde wordt opgeslagen als een geheel getal. Een char heeft een geheugengrootte van 1 byte. Het slaat ook een enkel teken op.

In deze C++ tutorial leer je:

  • Wat is Char?
  • Wat is ASCII?
  • Char-verklaring
  • Syntaxis:
  • ASCII-waarde afdrukken
  • Char-waarde afdrukken
  • Tekens invoeren
  • Teken naar tekenreeks converteren

Wat is ASCII?

De char-waarde wordt geïnterpreteerd als een ASCII-teken. Dit is vergelijkbaar met hoe Booleaanse waarden worden geïnterpreteerd als waar of onwaar. ASCII is een acroniem voor American Standard Code for Information Interchange. Het definieert een specifieke manier om Engelse karakters als getallen weer te geven.

De cijfers liggen tussen 0 en 127. Het teken 'a' komt bijvoorbeeld overeen met ASCII-code 97.

Char-verklaring

Om een ​​char-variabele in C++ te declareren, gebruiken we het char-sleutelwoord. Dit moet worden gevolgd door de naam van de variabele. De variabele kan worden geïnitialiseerd op het moment van de aangifte. De waarde van de variabele moet tussen enkele aanhalingstekens staan.

Syntaxis:

Hier is de syntaxis voor char-declaratie in C++:

char variable-name;

De variabelenaam is de naam die aan de variabele moet worden toegewezen.

Als er een waarde moet worden toegewezen op het moment van aangifte, kunt u deze syntaxis gebruiken:

char variable-name = 'value';	
  • De variabelenaam is de naam van de char-variabele.
  • De waarde is de waarde die aan de char-variabele moet worden toegewezen.

Voorbeeld 1:

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

Uitvoer:

Hier is een screenshot van de code:

Code uitleg:

  1. Het iostream-headerbestand in onze code opnemen om de functies ervan te gebruiken.
  2. De std-naamruimte in onze code opnemen om de klassen te gebruiken zonder deze aan te roepen.
  3. De functie main() aanroepen. De programmalogica moet worden toegevoegd aan de hoofdtekst van deze functie.
  4. Declareer een karaktervariabele met de naam grade. Aan de variabele is ook de waarde B toegewezen. Merk op dat de waarde van de variabele tussen enkele aanhalingstekens staat.
  5. Druk de waarde van het variabele cijfer af naast andere tekst op de console.
  6. Het programma moet waarde retourneren na succesvolle voltooiing.
  7. Einde van de hoofdtekst van de functie main().

ASCII-waarde afdrukken

Zoals hierboven vermeld, wordt elk teken geïnterpreteerd als ASCII-teken. Het is mogelijk voor u om de ASCII-waarde van elk teken te krijgen. U geeft het teken gewoon door aan de functie int(). Dit proces wordt typecasting genoemd. Laten we dit demonstreren:

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

Uitvoer:

Hier is een screenshot van de code:

Code uitleg:

  1. Het iostream-headerbestand in onze code opnemen om de functies ervan te gebruiken.
  2. De std-naamruimte in onze code opnemen om de klassen te gebruiken zonder deze aan te roepen.
  3. De functie main() aanroepen. De programmalogica moet worden toegevoegd aan de hoofdtekst van deze functie.
  4. Declareer een char-variabele met de naam ch.
  5. Druk wat tekst af op de console. De tekst vraagt ​​de gebruiker om een ​​waarde in te voeren voor de variabele ch.
  6. Lees de gebruikersinvoer van het toetsenbord en sla deze op in de variabele ch.
  7. Druk wat tekst af op de console. De tekst bevat het teken dat u hebt ingevoerd voor variabele ch, de ASCII-waarde van dit teken en andere tekst.
  8. Het programma moet waarde retourneren na succesvolle voltooiing.
  9. Einde van de hoofdtekst van de functie main().

Char-waarde afdrukken

Gegeven een ASCII-waarde kan de C++-compiler het bijbehorende teken retourneren. U declareert een char-variabele en kent deze een geheel getal toe. Het wordt geconverteerd naar de overeenkomstige tekenwaarde.

Voorbeeld 3:

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

Uitvoer:

Hier is een screenshot van de code:

Code uitleg:

  1. Het iostream-headerbestand in de code opnemen. We zullen dan zijn functies gebruiken zonder fouten te krijgen.
  2. Neem de std-naamruimte op in de code. We zullen de klassen gebruiken zonder het te noemen.
  3. De functie main() aanroepen. De programmalogica zou in de hoofdtekst van deze functie moeten gaan.
  4. Declareer drie char-variabelen x, y en z. Aan de drie zijn gehele getallen van 65, 66 en 67 toegewezen. Deze worden behandeld als ASCII-waarden voor tekens.
  5. Druk de waarde van variabele x af op de console. Aangezien x is gedeclareerd als een char, wordt de char met ASCII-waarde van 65 geretourneerd, dat wil zeggen, A.
  6. Druk de waarde van variabele y af op de console. Aangezien y is gedeclareerd als een char, wordt de char met ASCII-waarde van 66 geretourneerd, dat wil zeggen B.
  7. Druk de waarde van variabele z af op de console. Aangezien z is gedeclareerd als een char, wordt de char met ASCII-waarde van 67 geretourneerd, dat wil zeggen, C.
  8. Het programma moet waarde retourneren na succesvolle voltooiing.
  9. Het einde van de hoofdtekst van de functie main().

Tekens invoeren

We kunnen de std::cin-functie gebruiken om een ​​char te lezen dat door de gebruiker is ingevoerd via het toetsenbord. Met de std::cin kunt u veel tekens invoeren. De karaktervariabele kan echter slechts één karakter bevatten. Dit betekent dat alleen het eerste ingevoerde teken wordt geëxtraheerd en opgeslagen in de tekenvariabele. De rest blijft in de buffer die wordt gebruikt door std::cin. Om het uit te pakken, roept u de std::cin.

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

Uitvoer:

Hier is een screenshot van de code:

Code uitleg:

  1. Het iostream-headerbestand in onze code opnemen om de functies ervan te gebruiken.
  2. Neem de std-naamruimte op in onze code om de klassen te gebruiken zonder deze aan te roepen.
  3. De functie main() aanroepen. De programmalogica moet worden toegevoegd aan de hoofdtekst van deze functie.
  4. Druk wat tekst af op de console.
  5. Declareer een karaktervariabele met de naam ch.
  6. Lees gebruikersinvoer vanaf het toetsenbord. De invoer wordt opgeslagen in de variabele ch. Aangezien een gebruiker een tekenreeks zoals abc typt, wordt alleen het eerste teken, a, opgeslagen in variabele ch.
  7. Het eerste ingevoerde teken, de ASCII-code en andere tekst op de console afdrukken. De ASCII-code wordt bepaald door de tekenvariabele door te geven aan de functie int().
  8. Lees het volgende teken dat door de gebruiker is ingevoerd. De gebruiker hoeft geen nieuw teken in te voeren. Het zal in plaats daarvan het tweede teken lezen dat is ingevoerd, dat wil zeggen b.
  9. Het tweede ingevoerde teken, de ASCII-code en andere tekst op de console afdrukken. De ASCII-code wordt bepaald door de tekenvariabele door te geven aan de functie int().
  10. Het programma moet waarde retourneren na succesvolle voltooiing.
  11. Einde van de hoofdtekst van de functie main().

Teken naar tekenreeks converteren

Er bestaan ​​een aantal manieren die we kunnen gebruiken om karakters om te zetten in strings.

Laten we ze bespreken:

#1:Constructor gebruiken gegeven door een String Class

Dit kan met de volgende syntaxis:

string st(int n,char x);

De parameter n geeft de grootte van de te genereren string aan.

De parameter x is het teken dat moet worden geconverteerd naar een tekenreeks.

De functie retourneert een string.

Voorbeeld 5:

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

Uitvoer:

Hier is een screenshot van de code:

Code uitleg:

  1. Het iostream-headerbestand in onze code opnemen om de functies ervan te gebruiken.
  2. Neem het string-headerbestand op in onze code om de functies ervan te gebruiken.
  3. Neem de std-naamruimte op in onze code om de klassen te gebruiken zonder deze aan te roepen.
  4. De functie main() aanroepen. De programmalogica moet worden toegevoegd aan de hoofdtekst van deze functie.
  5. Converteer het teken "C" in een tekenreeks van 1 lengte en wijs de resulterende tekenreeks toe aan de variabele st.
  6. Druk de waarde van de string st op de console af naast andere tekst.
  7. Het programma moet waarde retourneren na succesvolle voltooiing.
  8. Einde van de hoofdtekst van de functie main().

#2) De operatoren std::string =en +=gebruiken

De operatoren =en +=zijn al overladen met tekens. De twee kunnen worden gebruikt om een ​​bepaald teken om te zetten in een string.

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

Uitvoer:

Hier is een screenshot van de code:

Code uitleg:

  1. Neem het iostream-headerbestand op in onze code om de functies ervan te gebruiken.
  2. Neem het string-headerbestand op in onze code om de functies ervan te gebruiken.
  3. Neem de std-naamruimte op in onze code om de klassen te gebruiken zonder deze aan te roepen.
  4. De functie main() aanroepen. De programmalogica moet worden toegevoegd aan de hoofdtekst van deze functie.
  5. Maak een stringvariabele met de naam st.
  6. Maak een teken met de naam b met een waarde van B.
  7. Wijs een waarde van A toe aan de tekenreeks met de naam st.
  8. Gebruik de operator +=om tekens om te zetten in een tekenreeks.
  9. Druk de waarde van de string st op de console af naast andere tekst.
  10. Het programma moet waarde retourneren na succesvolle voltooiing.
  11. Einde van de hoofdtekst van de functie main().

#3:Std::string-methoden gebruiken

De klasse std::string wordt geleverd met veel overbelaste functies die u kunnen helpen tekens in tekenreeksen om te zetten.

Ze omvatten:

  • push_back

    Deze functie wijst een bepaald teken toe aan het einde van een string. Het is overbelast voor karakters.

    Het vereist de volgende syntaxis:

    void push_back(char ch)
    

    De parameter ch is het teken dat in een string moet worden veranderd.

  • toevoegen

    Het wijst veel exemplaren van een bepaald teken toe aan een tekenreeks.

    De functie heeft de volgende syntaxis:

    string& append(size_t n,char ch)
    

    De parameter n geeft de tijden aan waarop het teken wordt toegevoegd.

    De parameter ch is het teken dat aan een string moet worden toegevoegd.

  • toewijzen

    Deze functie vervangt de huidige inhoud van de tekenreeks door n exemplaren van het opgegeven teken.

    Het vereist de volgende syntaxis:

    string& assign(size_t n,char ch);
    

    De parameter n geeft het totale aantal kopieën voor het teken aan.

    De parameter ch is het teken dat naar de string moet worden gekopieerd.

  • invoegen

    De invoegfunctie voegt n kopieën van een teken in op de beginpositie van de tekenreeks, zoals gespecificeerd in de argumenten.

    Het vereist de volgende syntaxis:

    string& insert(size_t p,size_t n,char ch);					

    De parameter p geeft de positie vanaf het begin aan waar tekens worden ingevoegd.

    De parameter n geeft het totale aantal kopieën voor het teken aan.

    De parameter ch is het teken dat in de string moet worden ingevoegd.

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

Uitvoer:

Hier is een screenshot van de code:

  1. Neem het iostream-headerbestand op in onze code om de functies ervan te gebruiken.
  2. Neem het string-headerbestand op in onze code om de functies ervan te gebruiken.
  3. Neem de std-naamruimte op in onze code om de klassen te gebruiken zonder deze aan te roepen.
  4. De functie main() aanroepen. De programmalogica moet worden toegevoegd aan de hoofdtekst van deze functie.
  5. Maak een stringvariabele met de naam st.
  6. Wijs het teken A toe aan het einde van de tekenreeks.
  7. Druk de waarde van de string st op de console af naast andere tekst. De endl (eindregel) verplaatst de cursor naar de volgende regel.
  8. Stel de waarde van de tekenreeks st in op leeg.
  9. Wijs één teken C toe aan de tekenreeks met de naam st.
  10. Druk de waarde van de string st op de console af naast andere tekst. De endl (eindregel) verplaatst de cursor naar de volgende regel.
  11. Stel de waarde van de tekenreeks st in op leeg.
  12. Vervang inhoud voor string st door één teken D.
  13. Druk de waarde van de string st op de console af naast andere tekst. De endl (eindregel) verplaatst de cursor naar de volgende regel.
  14. Voeg een enkel teken E in in de tekenreeks met de naam st uit de eerste index.
  15. Druk de waarde van de string st op de console af naast andere tekst. De endl (eindregel) verplaatst de cursor naar de volgende regel.
  16. Het programma moet waarde retourneren na succesvolle voltooiing.
  17. Einde van de hoofdtekst van de functie main().

#4: Std::stringstream gebruiken

Als u deze klasse wilt gebruiken om tekens naar een tekenreeks te converteren, voegt u het teken in stream in.

Ze worden naar de tekenreeks geschreven.

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

Uitvoer:

Hier is een screenshot van de code:

Code uitleg:

  1. Neem het iostream-headerbestand op in onze code om de functies ervan te gebruiken.
  2. Neem het string-headerbestand op in onze code om de functies ervan te gebruiken.
  3. Neem het sstream-headerbestand op in onze code om de functies ervan te gebruiken.
  4. Neem de std-naamruimte op in onze code om de klassen te gebruiken zonder deze aan te roepen.
  5. De functie main() aanroepen. De programmalogica moet worden toegevoegd aan de hoofdtekst van deze functie.
  6. Maak een stringvariabele met de naam st.
  7. Maak een streamvariabele met de naam myst.
  8. Voeg het teken A in in het stroomobject met de naam myst.
  9. Converteer het stream-object in een string.
  10. Druk de waarde van de string st op de console af naast andere tekst. De endl (eindregel) verplaatst de cursor naar de volgende regel.
  11. Het programma moet waarde retourneren na succesvolle voltooiing.
  12. Einde van de hoofdtekst van de functie main().

Samenvatting:

  • Een char is een C++-gegevenstype dat wordt gebruikt voor de opslag van letters.
  • C++ Char is een integraal gegevenstype, wat betekent dat de waarde wordt opgeslagen als een geheel getal.
  • Het neemt een geheugen van 1 byte in beslag.
  • C++ Char slaat alleen één teken op.
  • Char-waarden worden geïnterpreteerd als ASCII-tekens.
  • ASCII is een acroniem voor American Standard Code for Information Interchange.
  • Het vermeldt een specifieke manier om Engelse karakters in de vorm van getallen weer te geven.
  • Om de ASCII-waarde van een teken te zien, geven we deze door aan de functie int().
  • Om de corresponderende tekenwaarde van de ASCII-waarde te zien, definiëren we de ASCII als een teken.

C Taal

  1. C++-gegevenstypen
  2. Java Type Casting
  3. Wat moet ik doen met de gegevens?!
  4. C++ do...while-lus met voorbeelden
  5. C++-aanwijzers met voorbeelden
  6. Overbelasting van C++-operator met voorbeelden
  7. C++-structuur met voorbeeld
  8. std::lijst in C++ met Voorbeeld
  9. C++-functies met programmavoorbeelden
  10. Ontgrendel de waarde van IoT met prestatiebewaking
  11. Typen C++-variabelen