C++ Tipo de dados Char com exemplos

O que é Char?

Char é um C++ tipo de dado projetado para o armazenamento de letras. Char é uma abreviação para um caractere alfanumérico. É um tipo de dado integral, o que significa que o valor é armazenado como um inteiro. Um char ocupa um tamanho de memória de 1 byte. Ele também armazena um único caractere.

O que é ASCII?

O valor char é interpretado como um caractere ASCII. Isso é semelhante a como os valores booleanos são interpretados como verdadeiros ou falsos. ASCII é um acrônimo para Código Padrão Americano para Intercâmbio de Informações. Ele define uma maneira específica de representar caracteres ingleses como números.

Os números variam entre 0 e 127. Por exemplo, o caractere 'a' é equivalente ao código ASCII 97.

Declaração de Caractere

Para declarar um variável char em C++, usamos a palavra-chave char. Isto deve ser seguido pelo nome da variável. A variável pode ser inicializada no momento da declaração. O valor da variável deve ser colocado entre aspas simples.

Sintaxe

Aqui está a sintaxe para declaração char em C++:

char variable-name;

O nome da variável é o nome a ser atribuído à variável.

Se um valor for atribuído no momento da declaração, você poderá usar esta sintaxe:

char variable-name = 'value';	
  • O nome da variável é o nome da variável char.
  • O valor é o valor a ser atribuído à variável char.

1 exemplo:

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

Saída:

Declaração de Caractere

Aqui está uma captura de tela do código:

Declaração de Caractere

Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream em nosso código para usar suas funções.
  2. Incluindo o namespace std em nosso código para usar suas classes sem chamá-lo.
  3. Chamando a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
  4. Declare uma variável de caractere chamada nota. A variável também recebeu um valor B. Observe que o valor da variável está entre aspas simples.
  5. Imprima o valor da variável nota junto com outro texto no console.
  6. O programa deve retornar o valor após a conclusão bem-sucedida.
  7. Fim do corpo da função main().

Imprimindo valor ASCII

Conforme afirmado acima, cada caractere é interpretado como caractere ASCII. É possível obter o valor ASCII de qualquer caractere. Você simplesmente passa o caractere para a função int(). Este processo é chamado de conversão de tipo. Vamos demonstrar isso:

2 exemplo:

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

Saída:

Imprimindo valor ASCII

Aqui está uma captura de tela do código:

Imprimindo valor ASCII

Explicação do código:

  1. Incluir o arquivo de cabeçalho iostream em nosso código para usar suas funções.
  2. Incluir o namespace std em nosso código para usar suas classes sem chamá-lo.
  3. Chamando a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
  4. Declare uma variável char chamada ch.
  5. Imprima algum texto no console. O texto solicita que o usuário insira um valor para a variável ch.
  6. Leia a entrada do usuário no teclado e armazene-a na variável ch.
  7. Imprima algum texto no console. O texto incluirá o caractere inserido para a variável ch, o valor ASCII desse caractere e outro texto.
  8. O programa deve retornar o valor após a conclusão bem-sucedida.
  9. Fim do corpo da função main().

Imprimindo valor de caractere

Dado um valor ASCII, o C++ compilador pode retornar o caractere correspondente. Você declara uma variável char e atribui a ela um valor inteiro. Ele será convertido para o valor do caractere correspondente.

3 exemplo:

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

Saída:

Imprimindo valor de caractere

Aqui está uma captura de tela do código:

Imprimindo valor de caractere

Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream no código. Usaremos então suas funções sem obter erros.
  2. Inclua o namespace std no código. Usaremos suas classes sem chamá-lo.
  3. Chamando a função main(). A lógica do programa deve entrar no corpo desta função.
  4. Declare três variáveis ​​char x, y e z. Os três receberam valores inteiros de 65, 66 e 67. Eles serão tratados como valores ASCII para caracteres.
  5. Imprima o valor da variável x no console. Como x foi declarado como char, será retornado o char com valor ASCII 65, ou seja, A.
  6. Imprima o valor da variável y no console. Como y foi declarado como char, será retornado o char com valor ASCII 66, ou seja, B.
  7. Imprima o valor da variável z no console. Como z foi declarado como char, será retornado o char com valor ASCII 67, ou seja, C.
  8. O programa deve retornar o valor após a conclusão bem-sucedida.
  9. O final do corpo da função main().

Inserindo caracteres

Podemos usar a função std::cin para ler um caractere inserido pelo usuário através do teclado. O std::cin permitirá que você insira muitos caracteres. No entanto, a variável caractere pode conter apenas um caractere. Isso significa que apenas o primeiro caractere inserido será extraído e armazenado na variável de caractere. O restante permanecerá no buffer usado por std::cin. Para extraí-lo, faça chamadas subsequentes para std::cin.

4 exemplo:

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

Saída:

Inserindo caracteres

Aqui está uma captura de tela do código:

Inserindo caracteres

Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream em nosso código para usar suas funções.
  2. Inclua o namespace std em nosso código para usar suas classes sem chamá-lo.
  3. Chamando a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
  4. Imprima algum texto no console.
  5. Declare uma variável de caractere chamada ch.
  6. Leia a entrada do usuário no teclado. A entrada será armazenada na variável ch. Como o usuário digitará uma sequência de caracteres como abc, apenas o primeiro caractere, a, será armazenado na variável ch.
  7. Imprimindo o primeiro caractere digitado, seu código ASCII e demais textos no console. O código ASCII é determinado passando a variável de caractere para a função int().
  8. Leia o próximo caractere inserido pelo usuário. O usuário não será obrigado a inserir um novo caractere. Em vez disso, ele lerá o segundo caractere inserido, ou seja, b.
  9. Imprimindo o segundo caractere digitado, seu código ASCII e demais textos no console. O código ASCII é determinado passando a variável de caractere para a função int().
  10. O programa deve retornar o valor após a conclusão bem-sucedida.
  11. Fim do corpo da função main().

Convertendo Caractere em String

Existem várias maneiras que podemos usar para converter caracteres em cordas.

Vamos discuti-los:

Nº 1: Usando o construtor fornecido por uma classe String

Isso pode ser feito usando a seguinte sintaxe:

string st(int n,char x);

O parâmetro n denota o tamanho da string que será gerada.

O parâmetro x é o caractere a ser convertido em uma string.

A função retorna uma string.

5 exemplo:

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

Saída:

Convertendo Caractere em String

Aqui está uma captura de tela do código:

Convertendo Caractere em String

Explicação do código:

  1. Incluindo o arquivo de cabeçalho iostream em nosso código para usar suas funções.
  2. Inclua o arquivo de cabeçalho de string em nosso código para usar suas funções.
  3. Inclua o namespace std em nosso código para usar suas classes sem chamá-lo.
  4. Chamando a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
  5. Converta o caractere “C” em uma string de comprimento 1 e atribua a string resultante à variável st.
  6. Imprima o valor da string st no console junto com outro texto.
  7. O programa deve retornar o valor após a conclusão bem-sucedida.
  8. Fim do corpo da função main().

#2) Usando o std::string Operators = e +=

Os operadores = e += já estão sobrecarregados com caracteres. Os dois podem ser usados ​​para converter um caractere específico em uma string.

6 exemplo:

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

Saída:

Convertendo Caractere em String

Aqui está uma captura de tela do código:

Convertendo Caractere em String

Explicação do código:

  1. Inclua o arquivo de cabeçalho iostream em nosso código para usar suas funções.
  2. Inclua o arquivo de cabeçalho de string em nosso código para usar suas funções.
  3. Inclua o namespace std em nosso código para usar suas classes sem chamá-lo.
  4. Chamando a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
  5. Crie uma variável de string chamada st.
  6. Crie um personagem chamado b com um valor de B.
  7. Atribua um valor de A à string chamada st.
  8. Use o operador += para converter caracteres em uma string.
  9. Imprima o valor da string st no console junto com outro texto.
  10. O programa deve retornar o valor após a conclusão bem-sucedida.
  11. Fim do corpo da função main().

Nº 3: Usando métodos std::string

A classe std::string vem com muitas funções sobrecarregadas que podem ajudá-lo a converter caracteres em strings.

Eles incluem:

  • retrocesso Esta função atribui um caractere específico ao final de uma string. Está sobrecarregado de caracteres. É necessária a seguinte sintaxe:
    void push_back(char ch)
    

    O parâmetro ch é o caractere que deve ser alterado para uma string.

  • anexar Ele atribui muitas cópias de um caractere específico a uma string. A função assume a seguinte sintaxe:
    string& append(size_t n,char ch)
    

    O parâmetro n denota os horários em que o caractere será anexado.

    O parâmetro ch é o caractere a ser anexado à string.

  • atribuir Esta função substitui o conteúdo atual da string por n cópias do caractere especificado. Ela usa a seguinte sintaxe:
    string& assign(size_t n,char ch);

    O parâmetro n denota o total de cópias do personagem.

    O parâmetro ch é o caractere a ser copiado na string.

  • inserir A função insert insere n cópias de um caractere na posição inicial da string, conforme especificado nos argumentos. É necessária a seguinte sintaxe:
    string& insert(size_t p,size_t n,char ch);

    O parâmetro p denota a posição inicial onde os caracteres serão inseridos.

    O parâmetro n denota o total de cópias do personagem.

    O parâmetro ch é o caractere a ser inserido na string.

7 exemplo:

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

Saída:

Convertendo Caractere em String

Aqui está uma captura de tela do código:

Convertendo Caractere em String

  1. Inclua o arquivo de cabeçalho iostream em nosso código para usar suas funções.
  2. Inclua o arquivo de cabeçalho de string em nosso código para usar suas funções.
  3. Inclua o namespace std em nosso código para usar suas classes sem chamá-lo.
  4. Chamando a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
  5. Crie uma variável de string chamada st.
  6. Atribua o caractere A ao final da string.
  7. Imprima o valor da string st no console junto com outro texto. O endl (linha final) move o cursor para a próxima linha.
  8. Defina o valor da string st como vazio.
  9. Atribua um único caractere C à string chamada st.
  10. Imprima o valor da string st no console junto com outro texto. O endl (linha final) move o cursor para a próxima linha.
  11. Defina o valor da string st como vazio.
  12. Substitua o conteúdo da string st pelo único caractere D.
  13. Imprima o valor da string st no console junto com outro texto. O endl (linha final) move o cursor para a próxima linha.
  14. Insira um único caractere E na string chamada st de seu primeiro índice.
  15. Imprima o valor da string st no console junto com outro texto. O endl (linha final) move o cursor para a próxima linha.
  16. O programa deve retornar o valor após a conclusão bem-sucedida.
  17. Fim do corpo da função main().

Nº 4: Usando std::stringstream

Para usar esta classe para converter caractere em string, insira o caractere no stream.

Eles serão gravados na string.

8 exemplo:

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

Saída:

Convertendo Caractere em String

Aqui está uma captura de tela do código:

Convertendo Caractere em String

Explicação do código:

  1. Inclua o arquivo de cabeçalho iostream em nosso código para usar suas funções.
  2. Inclua o arquivo de cabeçalho de string em nosso código para usar suas funções.
  3. Inclua o arquivo de cabeçalho sstream em nosso código para usar suas funções.
  4. Inclua o namespace std em nosso código para usar suas classes sem chamá-lo.
  5. Chamando a função main(). A lógica do programa deve ser adicionada ao corpo desta função.
  6. Crie uma variável de string chamada st.
  7. Crie uma variável de fluxo chamada myst.
  8. Insira o caractere A no objeto stream denominado myst.
  9. Converta o objeto stream em uma string.
  10. Imprima o valor da string st no console junto com outro texto. O endl (linha final) move o cursor para a próxima linha.
  11. O programa deve retornar o valor após a conclusão bem-sucedida.
  12. Fim do corpo da função main().

Resumo

  • Um caractere é um C++ tipo de dados usado para o armazenamento de cartas.
  • C++ Char é um tipo de dados integral, o que significa que o valor é armazenado como um número inteiro.
  • Ocupa um tamanho de memória de 1 byte.
  • C++ Char armazena apenas um único caractere.
  • Os valores de caracteres são interpretados como caracteres ASCII.
  • ASCII é um acrônimo para Código Padrão Americano para Intercâmbio de Informações.
  • Ele estabelece uma maneira específica de representar caracteres ingleses na forma de números.
  • Para ver o valor ASCII de um caractere, passamos para a função int().
  • Para ver o valor char correspondente do valor ASCII, definimos o ASCII como um caractere.