numeros - intero a string c++
¿Cómo convertir un carácter a entero en C? (2)
En los viejos tiempos, cuando podíamos suponer que la mayoría de las computadoras usaban ASCII, simplemente lo hacíamos
int i = c[0] - ''0'';
Pero en estos días de Unicode, no es una buena idea. Nunca fue una buena idea si tu código tuviera que ejecutarse en una computadora que no sea ASCII.
Editar: Aunque parece hackish, evidentemente está garantizado por el estándar para funcionar. Gracias @Earwicker.
Posibles duplicados:
Cómo convertir un solo carácter en un int
Carácter a entero en C
¿Puede alguien decirme cómo convertir un char
a int
?
char c[]={''1'','':'',''3''};
int i=int(c[0]);
printf("%d",i);
Cuando intento esto, me da 49.
La función estándar atoi()
probablemente hará lo que quieras.
Un ejemplo simple usando "atoi":
#include <unistd.h>
int main(int argc, char *argv[])
{
int useconds = atoi(argv[1]);
usleep(useconds);
}