Caracteres

Aula de Rogério Junior

Nessa aula aprenderemos sobre mais um tipo que pode ser atribuído as variáveis, o tipo char.

Este tipo de variável representa as letras e vai nos permitir ler uma letra e armazenar em uma variável (por enquanto apenas uma letra pode ser armazenada, nada de palavras ainda). A letra é armazenada na variável como um inteiro "codificado". A tabela usada para tal código é o ASCII.

Para ler um caractere na tela e salvá-lo em uma variável chamada letra, usamos o comando "cin>>letra;". Para representar o código de um caractere, o escrevemos entre aspas simples, ou seja 1 significa o número 1, mas '1' significa o código ASCII do dígito 1, que é 49. Como você pode ver na tabela acima, algarismos e letras (maiúsculas e minúsculas) são ordenadas em ordem crescente no código, então, para "passar para a próxima letra do alfabeto", por exemplo, basta eu adicionar 1 à letra que tenho. Vamos por exemplo, fazer um programa que, dado um número entre 1 e 26 escreve qual a letra minúscula que ocupa esta posição no alfabeto. Note, na tabela ASCII que, como as letras estão em ordem alfabética, o número da letra que ocupa a posição N do alfabeto se fixarmos a letra 'a' na primeira posição será o código que vem imediatamente antes de 'a' somado N. O código que vem antes de 'a' é ('a'-1), logo, o código da letra que vem na posição N do alfabeto (começando do 1) será 'a'-1+N. O computador entende que a resposta para a equação 'a'-1+N é um número inteiro e para fazer com que ele seja transformado em um caractere usamos uma operação chamada cast, a operação cast serve para transformar um tipo de variável em outro, dessa forma em (char)('a'-1+N) o resultado da expressão 'a'-1+N é um número inteiro, mas ao adicionar uma transformação para o tipo char conseguimos como resultado o caractere correspondente ao valor resultante da expressão. Por exemplo, (char)(97) resulta em 'a'.


#include <iostream> // cin e cout

using namespace std;
 
int main(){
  
  int n; // declaro a variável n
  
  cin>>n; // leio o valor de n
  
  cout<<(char)('a'-1+n); // imprimo o caractere de código 'a'-1+n
  
  return 0;
}

Você deve sempre lembrar que para usar um letra em C++ usamos aspas simples. Logo, para fazer a variável do tipo char chamada c receber a letra 'A', você deve fazer: c = 'A';. Note que se você escrever c = A; você está pedindo para o computador armazenar o valor da variável A na variável c.

Embora o tipo char pareça complicado à primeira vista, ele na verdade não é. Como todos os outros conteúdos, basta que você faça os exercícios propostos para dominar mais esse conteúdo.

Caso você tenha alguma dúvida com relação a aula ou aos exercícios, não hesite em usar a função de comentários.