Santosh Kumar
Santosh Kumar

Reputation: 27925

How does line ending effect in coding?

Why do line ending differ from platform to platform? Even why is there term like line ending in programming?

I prefer saving my codes in Unix/Linux format, even if I'm on Windows. Am I missing anything by not saving it in Windows or MacOS format? How does line ending effect in coding.

Upvotes: 0

Views: 605

Answers (2)

Adrian Cornish
Adrian Cornish

Reputation: 23906

Basically everyone wanted to be different when creating OS's - Un*x's started with LF, then VMS and DOS wanted CR/LF (like a typewriter) and of course MAC wanted to be different so they went for CR only.

They just wanted to make it harder to transfer between OS's so that you 'bought' into one

Added because of comment

Up to the programmer - if you need to support different line endings then you must code for them. eg you could create a #define for the line ending and then have this change depending on compile options

Upvotes: 0

Mark Ransom
Mark Ransom

Reputation: 308530

In the early days, when Typewriters were nearly the only way of getting output from a computer, CR and LF did different things. Unix started the tradition of using a single character to mark the end of a line, probably because it made their pipelining easier; their drivers could easily convert a single LF to CR/LF if need be. Linux is mostly a Unix clone so it keeps that convention. The others hold on to the CR/LF convention for historical reasons, even though it's not strictly necessary.

Some languages such as C, C++, and Python will let you specify the type of file when you open it, either binary or text. For text files a translation is performed so that a single LF is translated into the line ending convention required by the OS.

Upvotes: 1

Related Questions