본문 바로가기

프로그래밍(TA, AA)/C C++

[C C++] 캐리지 리턴(CR)과 라인 피드(LF)

캐리지 리턴(CR)과 라인 피드(LF)는 느린 프린터의 유산입니다. CR은 현재 위치를 나타내는 커서를 맨 앞으로 이동시킨다는 뜻이고, LF는 커서의 위치를 아랫줄로 이동시킨다는 뜻입니다. 이 두 동작을 합치면 뉴라인('\n')과 동일한 동작을 하게 됩니다.


굳이 두 동작으로 나눈 이유는 과거의 느린 프린터가 물리적인 동작을 취하는데 충분한 시간을 확보해주기 위해서 신호를 두개로 나누어 보내주었기 때문이라고 알고 있습니다.


하지만 현재는 둘 중 하나만 있어도 뉴라인으로 간주합니다. 그리고 LF로 뉴라인을 나타내는지 CR+LF로 뉴라인을 나타내는지는 언어의 차이가 아니라 시스템의 차이입니다.


Unix-like 시스템에서는 LF로, Windows에서는 CR+LF로 표현합니다.