Ahora mismo de sintaxis el código anda un poco chungo, y lo que está mal es el algoritmo dentro de la función , si no hace nada ni reacciona es que normalmente se crea un bucle infinito y si el programa termina del tirón y no da el resultado esperado es que está mal.Y como es al llamar a la función pues ese problema está en la función.Otra cosa el operador == que te dije es para comparar y el = para asignar no todos para lo mismo.Vamos ejecutando linea a linea , supongamos que hemos metido el 123456789.
Primera línea: Declaramos i
Segunda línea: Ponemos i en 0 y Mientras que i sea menor que nueve haz lo que esté entre llaves y aumenta i.
{
Cuarta línea: Despliega los carácteres uno por uno. También puedes hacerlo así eh cout<<numero;
}
Sexta línea: Ponemos i en 0 y Mientras que i sea menor que nueve haz lo que esté entre llaves y aumenta i.
{
Octava línea: hacer mientras numero en [i] sea igual que nueve en decimal no en carácter estás comprobando un número!!!.
{
Décima linea: x es igual que 9 , mientras que equis sea igual que 0 o sea nunca haz lo que esté entre llaves y aumenta i , esto no se ejecuta nunca.
}
}
Hasta aquí creo que puedes comprender que sale de todos los bucles sin ejecutar nada.
Para lo que te digo de comparar los carácteres y eso te lo explico mejor por aquí:
El 9 en carácter no es el 9 en número
El 9 en carácter equivale a 57 en número.
Esto te ayudará a entenderlo mejor: