[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: LF/CR conversion
In article <LaidneczJbZYRDbYnZ2dnUVZ_vPinZ2d@comcast.com>,
Michael J. Mahon <mjmahon@aol.com> wrote:
>Paul Schlyter wrote:
>> In article <_JmdnVMGJZtlzjTYnZ2dnUVZ_rOqnZ2d@comcast.com>,
>> Michael J. Mahon <mjmahon@aol.com> wrote:
>>
>>
>>>I only replaced characters, never altering the length of the file. I
>>>replaced CR/LF with blank/CR and LF alone with CR. a cheap hack, but
>>>it did what I needed.
>>
>>
>> Doing so can sometimes cause unwanted side effects.
>>
>> If the text is a C or C++ source file, and if that file contains line
>> continuation characters (a backslash at the very end of a line), doing
>> what you did will add an extra space character after that final
>> baskslash, and that will invalidate the backslash. The C compiler
>> will interpret the "\ " as a single space character, and as far as the
>> C compiler is concerner, there won't be any line continuation. This
>> will frequently generate syntax errors when compiling the code - or, which
>> is worse, may be syntactically OK but do something different than the
>> programmer intended.
>>
>> Programmers which encounter this kind of error usually get very
>> confused: since the extra trailing space behind the backslash will be
>> invisible in most text editors, they look at the code in their editor,
>> thinking it looks correct (which it would be without that trailing
>> space), and then get quite frustrated why the compiler says there's a
>> syntax error.
>
>Right.
>
>I did call it a cheap hack. ;-) It worked fine for text files
>I wanted.
>
>-michael
You're lucky you don't have to convert blank CR's to CR/LF pairs... :-)
--
----------------------------------------------------------------
Paul Schlyter, Grev Turegatan 40, SE-114 38 Stockholm, SWEDEN
e-mail: pausch at stockholm dot bostream dot se
WWW: http://stjarnhimlen.se/