Cool C/C++

Programacion en C/C++

Home FAQ Como convertir un char en int?
Como convertir un char en int? PDF Imprimir E-mail
Escrito por adrianvaca   
Martes, 22 de Marzo de 2011 23:03

Si tenemos un char, por ejemplo:

char c = '5';



Si queremos convertirlo en un valor entero, para luego restarle 2 lo que la mayoría hace es lo siguiente:

int num = c - 2;



Ahora num vale 51, esto se debe a que el código ASCII del caractér '5' vale 53. Entoces 53 - 2 = 51. Lo cual está mal...

Si queremos obtener el resultado correcto, en este caso 3, lo que hacemos es:

int num = (c - '0') - 2;



En este caso num vale obviamente 3, lo cual está bien...

Por lo tanto para convertir un char en int hay que hacer lo siguiente:

char c = '5';
int num = c - '0';

 

 
Otros artículos

Escribir un comentario


Código de seguridad
Refescar