C++

Perdona, hay algún comando que te muestre el número de dígitos de una variable tipo entero "int", algo como cout<<nombre_string. Length(); pero para variables de tipo entero. GRACIAS

3 Respuestas

Respuesta
1
La respuesta a tu pregunta es Si y No, me explico, realmente no existe ninguna función que te haga específicamente lo que quieres, habría que tirar de una función matemática que te da el número de dígitos de un número (función de la cual no me acuerdo en estos momentos).
Pero existe otra opción y es usar una función, sprintf(...), perteneciente al estándar, la cual nos puede dar la solución al problema.
Te pongo una página para que consultes el uso de esta función:
http://c.conclase.net/librerias/funcion.php?fun=sprintf
De todas formas te explico brevemente:
Esta función, que tiene la forma "sprintf(char *cadena, const char *formato, ...);" guarda en "cadena" una cadena de caracteres con formato "formato" y con todas las variables que quieras introducirles y devuelve (esto es lo que nos interesa) el número de caracteres escritos en "cadena".
Te pongo un ejemplo para el caso específico de obtener el número de dígitos de un int:
**********************
int numero;
int NumeroCifras;
char cadena[100];
......
NumeroCifras=sprintf(cadena,"%i",&numero);
**********************
NumeroCifras contendrá el número de cifras de numero.
Si sigues teniendo cualquier duda dímelo e intentaré explicártelo de otra forma o con otro ejemplo.
Respuesta
1
Pues creo que no. Pero, puedes pasar con un simple 'itoa' el entero a una cadena de caracteres y entonces hacer un strlen.
Respuesta
1
no . no lo hay . pero puedes pasar el entero a string y hacer un lenght();

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas