0

なぜ行末はプラットフォームごとに異なるのですか?なぜプログラミングで終わる行のような用語があるのですか?

Windowsを使用している場合でも、コードをUnix/Linux形式で保存することを好みます。WindowsまたはMacOS形式で保存しないことで何かが足りませんか?行末はコーディングにどのように影響しますか。

4

2 に答える 2

1

タイプライターがコンピューターから出力を得る唯一の方法であった初期の頃、CRとLFは異なることをしていました。Unixは、おそらくパイプライン化を容易にしたために、1文字を使用して行の終わりをマークするという伝統を開始しました。彼らのドライバーは、必要に応じて単一のLFをCR/LFに簡単に変換できます。LinuxはほとんどがUnixクローンであるため、その規則を守っています。他の人は、厳密には必要ではありませんが、歴史的な理由でCR/LF規則を保持しています。

C、C ++、Pythonなどの一部の言語では、ファイルを開くときに、バイナリまたはテキストのいずれかのファイルの種類を指定できます。テキストファイルの場合、単一のLFがOSで要求される行末規則に変換されるように変換が実行されます。

于 2012-08-08T01:15:38.693 に答える
0

基本的に、OSを作成するときは誰もが違うことを望んでいました-Un * xはLFで始まり、VMSとDOSはCR / LF(タイプライターのように)を望んでいました。

彼らは、OS間での転送を困難にして、1つに「購入」したかっただけです。

コメントのために追加

プログラマー次第-異なる行末をサポートする必要がある場合は、それらをコーディングする必要があります。たとえば、行末に#defineを作成し、コンパイルオプションに応じてこの変更を加えることができます。

于 2012-08-08T01:10:48.573 に答える