Cita de: DanielC# en 16 Noviembre 2013, 01:45 AMlo que resta es saber cómo accederLo mejor es obtener cada uno de los dígitos mediante división y modulo como ya te comento xaps, esos dígitos los almacenas en un array para procesarlos después pero si lo piensas un poco estas haciendo de forma manual la misma operación que sprintf.
Por ejemplo al 3 teniendo el siguiente número 12345 sin pasar por el resto
En cuanto al uso de esa función si el numero esta garantizado a ser positivo y lo imprimes con "%d" puedes ahorrarte la llamada a strlen utilizando:
Código (c) [Seleccionar]
longitud = sprintf(cad, "%d", numero);
Ya que el valor de retorno de sprintf es el numero de caracteres de la cadena generada sin contar el '\0'.
Un saludo