¿Cómo convertir char a int en C y C++? Analizando dígitos y caracteres
¡Hola a todos! Acabo de empezar a estudiar C++ y me encontré con una situación confusa. Necesito leer un carácter desde la entrada estándar y convertirlo en un número entero para realizar operaciones aritméticas con él. Aquí está mi código en C++:
```cpp
#include
using namespace std;
int main() {
char c;
cout << "Ingrese un dígito: ";
cin >> c;
int num = (int)c; // Intento convertir char a int
cout << "El número ingresado multiplicado por 2: " << num * 2 << endl;
return 0;
}
```
Si ingreso `5`, espero obtener como resultado `10`, ¡pero el programa muestra `106`! ¿Por qué sucede esto? Leí que `char` es un tipo entero y se puede hacer cast a `int`. Pero, aparentemente, estoy haciendo algo mal. Díganme, ¿cómo convertir correctamente un carácter que contiene un dígito en un número entero? Y, en general, ¿cuál es la diferencia entre la conversión de char a int al estilo C y al estilo C++? ¡Gracias de antemano por su ayuda!
<<>>
¿Por qué ocurre el error?
Su problema es una trampa clásica para principiantes
No answers yet.
Inicia sesión para dejar una respuesta
Blogs
Seguridad de aplicaciones Go: top 10 vulnerabilidades y cómo evitarlas
Concurrencia y multihilo en C++: de la A a la Z
OAuth 2.0 y autorización JWT en PHP: guía práctica completa
Kotlin para aprendizaje automático: posibilidades y limitaciones en la práctica