Convertir char a int en c ++

Convertir char a int en c ++

Antes de pasar a nuestro tema, discutamos qué personajes e enteros son. "Char" es un tipo de datos que se utiliza para almacenar un solo personaje como caracteres especiales, alfabetos, secuencias de escape, etc. Mientras que el "int" es el tipo de datos entero que contiene los números enteros y su tamaño es 4 bytes. Si bien se desarrolla enormes programas o un módulo de múltiples líneas de código que involucran diferentes tipos, a veces es importante convertir los tipos de datos de uno a otro. Cuando se trata de la conversión de un tipo de datos de caracteres en un tipo de datos enteros en C ++, nos proporciona múltiples formas de convertir un tipo de datos a otro.

Hay múltiples formas de convertir "char" a "int", que son las siguientes:

    • Usando tipecasting
    • Usando stoi ()
    • Usando Atoi ()

Método 1: Uso de Typecasting

Typecasting es el método que se utiliza para convertir cualquier tipo de datos de uno a otro. También se conoce como conversión de tipo.

Sintaxis:

dtype (variable_name)

En la sintaxis proporcionada, el "dtype" es el tipo de datos en el que queremos convertir la variable, y la "variable_name" que se pasa a la instrucción dtype () es la variable que se convertirá.

Si tenemos una variable de caracteres "A" que contiene el valor "2" y queremos convertirlo en el valor entero, simplemente usamos "int (a)" para convertirlo en el tipo entero.

Ejemplo 1:

Realicemos un ejemplo para comprender el funcionamiento de la tipificación de manera más efectiva. En este ejemplo, declaramos una variable de caracteres y la convertimos en un valor entero. Primero incluyamos el archivo de encabezado IOSTream que se utiliza para permitirnos usar las operaciones de entrada-salida. Luego, pasamos a la función principal donde declaramos una variable de caracteres llamada "char_var" que es responsable de mantener el valor numérico que es "2".

En la siguiente línea, utilizamos la instrucción "Cout" a la que pasamos el "int (char_var) - '0'". Es el cual el int (char_var) cambia el tipo de carácter a entero y el valor "0" se resta del valor de typecasted. La pregunta puede venir a su mente, ¿cuál es la razón para restar el valor "0"?? Siempre que queramos convertir un tipo de datos de un valor numérico, tenemos que restar "0" o "48" para obtener la variable exacta. Si no restamos "0" o "48", devuelve el valor ASCII del entero como salida. Al final, devolvemos el valor nulo.

#incluir
usando el espacio de nombres STD;
int main ()

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

Como se muestra en la siguiente figura, el valor entero "2" se ejecuta correctamente sin ningún error.

Método 2: Uso de Stoi

La función stoi () se usa para convertir el tipo de cadena en el valor entero. Es la función incorporada proporcionada por C++. Se usa principalmente para analizar los valores enteros fuera de los valores de cadena.

Sintaxis:

Stoi (cadena, posición)

En la sintaxis proporcionada, pasamos dos argumentos a la función stoi (): la "cadena" que se convertirá y la "posición". No es necesario agregar la posición. Se usa en algunos casos, como tener una matriz de valores "200" y queremos convertir el tipo de datos de un valor específico, la posición se usa.

Ejemplo 2:

En este ejemplo, realizamos la conversión de la variable Char al tipo entero utilizando el método incorporado C ++ que es el método stoi (). Pasemos a nuestro ejemplo:

Después de incluir los archivos de encabezado, IOSTream y la cadena, el IOSTream se usa para realizar las operaciones de entrada-salida donde la cadena nos permite trabajar con la colección de caracteres. Ahora, sumergiéndose en nuestra función principal, declaramos una matriz de carbón llamada "arr []" al que pasamos el valor numérico "12" y otra variable entera que es "var" al que pasamos el método stoi (), lo que significa que significa que es responsable de mantener los valores de retorno del método stoi ().

Pasamos el "ARR" como argumento al método stoi () porque en este caso, convertimos el tipo de datos de "arr" al tipo entero. En la siguiente línea, simplemente mostramos el valor que se almacena en la variable "var". Por último, devolvemos el valor nulo.

#incluir
#incluir
#incluir
usando el espacio de nombres STD;
int main ()

stringstream myvar;
myvar << "5";
int var;
myvar >> var;
cout << "Integer value is: " << var;
regresar 0;

Como podemos ver en el resultado de nuestra salida, el valor que almacenamos en la matriz Char "arr []" se devuelve con éxito utilizando la variable entera "var" sin recibir ningún error.

Método 3: Uso de ATOI

La función Atoi () es la misma que la función stoi (). También se usa para convertir el tipo de datos de cadena en el tipo de datos entero.

Sintaxis:

Atoi (const char * str);

En la sintaxis proporcionada, pasamos el "const char*str" a la función ATOI donde el "const char" es el tipo de datos de caracteres y el "str" ​​es la variable que se convertirá en el tipo de datos entero.

Ejemplo 3:

Vamos a ver ahora el funcionamiento de la función ATOI () y cómo convierte el tipo de datos de String a ENTERGER. Después de incluir los archivos de encabezado, avanzamos hacia nuestra función principal donde declaramos dos variables. La primera variable es el "const char", que es "myvar". La segunda variable es la variable entera que es "var". Igual que el método stoi (), asignamos nuestra variable entera, el método atoi (), al que pasamos nuestra variable de carácter constante "myvar" que se convierte en el valor entero. Luego, los valores se asignan a la variable entero "var". En la siguiente línea de código, simplemente usamos la instrucción CoUT para mostrar el valor resultante de la variable "var" y devolver el valor nulo.


Como se muestra en la siguiente figura, el valor que almacenamos en la variable de caracteres "myvar" se muestra correctamente utilizando la variable de tipo entero sin ningún error.

Conclusión

En este manual, discutimos brevemente la conversión del tipo de datos de caracteres en el tipo de datos de enteros utilizando múltiples métodos. Realizamos múltiples ejemplos para facilitar la comprensión del concepto de la conversión del tipo de datos. Es el paso necesario en algunos casos cuando tenemos códigos grandes. También se hace necesario convertir un tipo de datos utilizando una línea simple donde podemos convertir el tipo de datos de la variable. No tenemos que declararlos una y otra vez. Esperamos que este artículo sea útil para que comprenda el funcionamiento de estos métodos.