Algunas personas dicen que es necesario usar \r\n para ajustar una línea a la izquierda en Windows, pero ¿por qué no es necesario en la programación de consola? Puedes usar \n para ajustar una línea a la izquierda.
Hola anfitrión. .
Respondí esta pregunta una vez hace mucho tiempo, pero no puedo encontrarla ahora, así que te la diré otra vez~
\r\nEl problema es que muchas personas Solo en esta era he entrado en contacto con la programación, y es un problema común para los programadores novatos que usan IDE modernos para programar en Windows. .
Este problema es un legado de la historia. \rEn código ASCII es 0x0D,\nEn código ASCII es 0x0A.
\r significa retorno, retorno de carro, incluso si el cursor regresa al principio de la línea actual.
\n es nueva línea, salto de línea, es decir, el cursor se mueve a la siguiente línea en la posición actual.
El cartel original debe haber visto máquinas de escribir en las películas.\r\nOriginalmente se usaba para máquinas de escribir de transmisión. El cursor no se mueve y el papel se mueve. Por lo tanto, cuando quieras cambiar una línea, primero muévete. el cursor a la primera línea de papel, y luego el desplazamiento se desplaza a la siguiente línea, que es lo que \r y \n realizan inicialmente.
Entonces la pregunta actual es, en los sistemas operativos modernos, ¿qué significado tienen estas dos cosas? La respuesta es que no tienen sentido.
Entonces, en Windows, en teoría todavía se usa \r\n para representar el cursor que se mueve al principio de la siguiente línea.
La mayoría de los compiladores de C entienden automáticamente \n como \r\n; de lo contrario, "123\n456" se convertirá en:
123
456
Eso es todo.
Por cierto, no sé qué está pasando. Windows diseña los saltos de línea como \r\n, mientras que Linux/Unix los diseña como \n, y Mac usa \r. La razón es que los archivos de texto de Linux/Unix a menudo se convierten en una línea cuando se abren en Win, pero \n no es compatible con Win, lo que significa que aparecerán caracteres confusos como ■, y lo mismo ocurre con los archivos de Mac. Al exportar archivos de texto de Win a otros sistemas, a menudo aparecen caracteres confusos como ^M al final de cada línea. Esto se debe a que hay un comando adicional.
Por favor pregunte~