Converter char em int em c ++

Converter char em int em c ++

Antes de mudar para o nosso tópico, vamos discutir o que são personagens e números inteiros. "Char" é um tipo de dados usado para armazenar um único personagem como caracteres especiais, alfabetos, sequências de fuga, etc. Enquanto o "int" é o tipo de dados inteiro que contém todos os números e seu tamanho é de 4 bytes. Ao desenvolver programas enormes ou um módulo de várias linhas de código que envolvem diferentes tipos, às vezes se torna importante converter os tipos de dados de um para outro. Quando se trata da conversão de um tipo de dados de caracteres em um tipo de dados inteiro em C ++, ele nos fornece várias maneiras de converter um tipo de dados para o outro.

Existem várias maneiras de converter "char" em "int", que são as seguintes:

    • Usando TypeCasting
    • Usando stoi ()
    • Usando Atoi ()

Método 1: Usando TypeCasting

TypeCasting é o método usado para converter qualquer tipo de dados de um para outro. Também é conhecido como conversão de tipo.

Sintaxe:

dtype (variável_name)

Na sintaxe fornecida, o "dtype" é o tipo de dados em que queremos converter a variável e a "variável_name" que é passada para a instrução dtype () é a variável que deve ser convertida.

Se tivermos uma variável de caractere "A" que detém o valor "2" e queremos convertê -lo para o valor inteiro, simplesmente usamos "int (a)" para convertê -lo no tipo inteiro.

Exemplo 1:

Vamos realizar um exemplo para entender o funcionamento de Typendinging de maneira mais eficaz. Neste exemplo, declaramos uma variável de personagem e a convertemos em um valor inteiro. Vamos primeiro incluir o arquivo de cabeçalho iostream que é usado para nos permitir usar as operações de entrada e saída. Em seguida, passamos para a função principal, onde declaramos uma variável de personagem chamada "char_var", responsável por manter o valor numérico que é "2".

Na próxima linha, usamos a declaração "cout" para a qual passamos o "int (char_var) - '0'". É o qual o int (char_var) altera o tipo do personagem para o número inteiro e o valor "0" é subtraído do valor tipastado. A questão pode vir à sua mente, qual é o motivo para subtrair o valor "0"? Sempre que queremos converter um tipo de dados de um valor numérico, precisamos subtrair "0" ou "48" dele para obter a variável exata. Se não subtrairmos "0" ou "48", ele retornará o valor ASCII do número inteiro como saída. No final, retornamos o valor nulo.

#incluir
usando namespace std;
int main ()

char char_var = '2';
cout << int(char_var) -'0';
retornar 0;

Conforme mostrado na figura a seguir, o valor inteiro “2” é executado com sucesso sem nenhum erro.

Método 2: Usando Stoi

A função stoi () é usada para converter o tipo de string no valor inteiro. É a função embutida fornecida por c++. É usado principalmente para analisar os valores inteiros dos valores da string.

Sintaxe:

Stoi (string, posição)

Na sintaxe fornecida, passamos dois argumentos para a função stoi () - a "string" que deve ser convertida e a "posição". Não é necessário adicionar a posição. É usado em alguns casos, como ter uma matriz de valores "200" e queremos converter o tipo de dados de um valor especificado, a posição é usada.

Exemplo 2:

Neste exemplo, realizamos a conversão da variável de char no tipo inteiro usando o método interno C ++, que é o método stoi (). Vamos prosseguir para o nosso exemplo:

Depois de incluir os arquivos do cabeçalho, iostream e string, o iostream é usado para executar as operações de entrada e saída em que a string nos permite trabalhar com a coleção de caracteres. Agora, mergulhando em nossa função principal, declaramos uma matriz de char chamada "arr []" para a qual passamos o valor numérico "12" e outra variável inteira que é "var" para a qual passamos o método stoi (), o que significa que isso É responsável por manter os valores de retorno do método stoi ().

Passamos o "arr" como um argumento para o método stoi () porque, neste caso, convertemos o tipo de dados de "arr" para o tipo inteiro. Na próxima linha, simplesmente exibimos o valor que é armazenado na variável "var". Por fim, retornamos o valor nulo.

#incluir
#incluir
#incluir
usando namespace std;
int main ()

myvar da luta;
myvar << "5";
int var;
myvar >> var;
cout << "Integer value is: " << var;
retornar 0;

Como podemos ver no resultado de nossa saída, o valor que armazenamos na matriz de char "arr []" é retornado com sucesso usando a variável inteira "var" sem receber nenhum erro.

Método 3: Usando Atoi

A função Atoi () é a mesma que a função stoi (). Também é usado para converter o tipo de dados da string no tipo de dados inteiro.

Sintaxe:

Atoi (const char * str);

Na sintaxe fornecida, passamos o "const char*str" para a função Atoi, onde o "const char" é o tipo de dados do caractere e o "str" ​​é a variável que deve ser convertida no tipo de dados inteiro.

Exemplo 3:

Vamos agora verificar o funcionamento da função Atoi () e como ele converte o tipo de dados de string para inteiro. Depois de incluir os arquivos do cabeçalho, avançamos em direção à nossa função principal, onde declaramos duas variáveis. A primeira variável é o "const char" que é "myvar". A segunda variável é a variável inteira que é "var". O mesmo que o método stoi (), atribuímos nossa variável inteira, o método Atoi (), ao qual passamos nossa variável de caractere constante "myvar" que é convertida ao valor inteiro. Então, os valores são atribuídos à variável inteira "var". Na próxima linha de código, simplesmente usamos a instrução Cout para exibir o valor resultante da variável "var" e retornar o valor nulo.


Conforme mostrado na figura a seguir, o valor que armazenamos na variável de caractere “myvar” é exibido com sucesso usando a variável do tipo inteiro sem nenhum erro.

Conclusão

Neste manual, discutimos brevemente a conversão do tipo de dados de caracteres no tipo de dados inteiro usando vários métodos. Realizamos vários exemplos para facilitar o entendimento do conceito de conversão do tipo de dados. É o passo necessário em alguns casos quando temos códigos grandes. Também se torna necessário converter um tipo de dados usando uma linha simples, onde podemos converter o tipo de dados da variável. Não precisamos declará -los de novo e de novo. Esperamos que este artigo seja útil para você entender o funcionamento desses métodos.