From: Jeffrey Carter <jrcarter@acm.org>
Subject: Re: File IO problem
Date: Fri, 06 Dec 2002 17:13:45 GMT
Date: 2002-12-06T17:13:45+00:00 [thread overview]
Message-ID: <3DF0DAC4.1050102@acm.org> (raw)
In-Reply-To: d40d7104.0212052227.3aaa570a@posting.google.com
prashna wrote:
> Hi all,
> Pls have a look at the following code
>
> with text_Io;
> use text_io;
> Procedure FILE_IO_DEMO is
> FILE_I, FILE_O : FILE_TYPE;
> S : STRING(1..80);
> Len : Integer;
> begin
> open (FILE_I, IN_FILE,"junk.txt");
> create(FILE_O, OUT_FILE, "output.txt");
> while END_OF_FILE(FILE_I) loop
> GET_LINE(FILE_I, S, Len);
> PUT_LINE(S(1..LEN));
> PUT_LINE(FILE_O,S(1..Len));
> end loop;
> end;
>
> The contents of the file junk.txt is
> lafeosbv
> qfowep p4gowb
> hfwevwpbv
>
> The program is creating output.txt but it contents are nil.
This is an example of why, in 1980, Ichbiah, Barnes, & Firth recommended
not using while loops. It is natural to think about the exit condition
for a loop, but a while loop requires its opposite, the continuation
condition.
Had this been written with an exit:
loop
exit when End_Of_File (File_I);
there would not have been a problem.
--
Jeff Carter
"From this day on, the official language of San Marcos will be Swedish."
Bananas
next prev parent reply other threads:[~2002-12-06 17:13 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-12-06 6:27 File IO problem prashna
2002-12-06 7:14 ` Martin Dowie
2002-12-06 11:50 ` File IO problem - silly mistake :o( prashna
2002-12-07 13:33 ` SteveD
2002-12-06 17:13 ` Jeffrey Carter [this message]
-- strict thread matches above, loose matches on Subject: below --
2002-12-06 7:07 File IO problem Grein, Christoph
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox