104 votes

Pourquoi Windows utilise CR LF?

Je comprends la différence entre les deux, donc il n'est pas nécessaire d'entrer dans les détails, mais je me demande simplement quel est le raisonnement derrière la raison pour laquelle Windows utilise à la fois CR et LF pour indiquer un saut de ligne. Il semble que la méthode Linux (utilisant uniquement LF) soit beaucoup plus logique, économise de l'espace et soit plus facile à analyser.

121voto

Anders Abel Points 36203

Historiquement, lors de l'utilisation d'imprimantes matricielles, CR renvoyait le chariot à la première position de la ligne tandis que LF alimentait la ligne suivante. L'utilisation de CR + LF dans le fichier lui-même a permis d'envoyer un fichier directement à l'imprimante, sans aucun type de pilote d'imprimante.

21voto

Dave Markle Points 44637

Il s'agit de la télétype (et à écrire) depuis les jours d'antan.

Il sert à être que, lorsque vous étiez fini de taper une ligne, vous avez eu à déplacer la machine à écrire de transport (qui a tenu le papier et a glissé vers la gauche, comme vous avez tapé) revenir au début de la ligne (CR). Vous avez alors eu à faire avancer le papier d'une ligne (LF) pour passer à la ligne suivante.

Il y a des cas, vous risquez de ne pas avoir voulu de saut de ligne lors du retour de la voiture, comme si vous alliez barré un personnage avec un tiret (vous venais de le remplacer).

Mais en gros, ça se résume à la convention. DOS utilisé le plein CR/LF convention, et UNIX raccourcir un peu. Maintenant nous sommes coincés!

4voto

Szocske Points 2371

Voici wikipedia sur l'histoire de la nouvelle ligne: http://en.wikipedia.org/wiki/Newline#History

2voto

NickHeidke Points 1348

De Wikipédia :

La séquence CR + LF était couramment utilisée sur de nombreux premiers systèmes informatiques qui avaient adopté des machines de téléscripteur, généralement un ASR33, comme périphérique de console, car cette séquence était nécessaire pour positionner ces imprimantes au début d'une nouvelle ligne.

0voto

nobar Points 5849

J'ai vu plus d'un compte à l'effet que la raison pour envoyer des deux personnages (et parfois plus) au lieu d'un a été dans le but de mieux correspondre à la vitesse de transfert de données pour l'impression physique de taux (c'était il y a longtemps). Le déplacement de la tête d'impression a pris plus de temps que l'impression d'un caractère unique et l'envoi de caractères supplémentaires était une façon de prévenir le transfert de données d'aller de l'avant de l'appareil d'impression. Donc, la raison pour laquelle nous avons plusieurs caractères de fin de ligne Windows est essentiellement la même que la raison pour laquelle nous avons claviers QWERTY, -- il était destiné à ralentir les choses.

Évidemment, la raison, cette pratique se poursuit dans Windows à ce jour est basée sur une notion de cours d'une compatibilité ascendante, et en fin de compte, juste la simple inertie.

À noter toutefois, cette convention n'est pas appliquée de façon stricte par Windows au niveau du système d'exploitation. De toute application Windows est libre d'ignorer la convention, selon ce que les autres applications, il est d'essayer d'être compatible avec.

Fait intéressant, l' article de Wikipedia à propos de "Saut de ligne", affirme que Windows 8 peut introduire un changement à l'aide de LF. L'article stipule également que Mac OS X introduit une transition de LF+CR juste LF.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X