En lenguaje C, los números enteros se convierten en cadenas. Explique la posición de la marca en ppt o(* ̄▽ ̄*)ゞ.
Está r=x%10, que es el dígito. x=x/10; esto equivale a tomar un número decimal, desplazarlo un lugar hacia la derecha y redondear el primer dígito.
Así que este bucle toma los bits uno por uno, los convierte en caracteres y los almacena en orden inverso en la cadena a la que apunta p.
Es decir, si x era originalmente 1234, entonces "4321" se almacenaría en ist.
p++ en while mueve la posición de la cadena.
En segundo lugar, dado que diferentes plataformas tienen diferentes reglas sobre lo que sucede cuando usas un número negativo como resto, siempre puedes convertir un número negativo en un número positivo para evitar errores. Por eso tenemos nuestra primera notación, convertimos números negativos en números positivos y guardamos el signo.
En tercer lugar, dado que el orden de ist está invertido, debes usar while al final para corregirlo.
Finalmente, si es un número negativo, debes agregar un signo menos al principio, pero si agregas un signo menos al final, significa que cada bit debe moverse hacia atrás nuevamente, por lo que la operación debe avanzar y agregar el signo menos al final de la cadena invertida para que después de invertir, el signo menos aparezca al principio.