IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Close (f), вопрос
сообщение
Сообщение #1


Бывалая
***

Группа: Пользователи
Сообщений: 290
Пол: Женский
Реальное имя: Анютка

Репутация: -  7  +


У меня вопрос, может глупый ...:
Имеет ли значение, если я поставлю close(f) (см. в коде)

Кусок:
reset(f);

while not eof(f) do begin
read(f,t);
summ:=summ+t;
summabs:=summabs+abs(t);
end;
close(f); {здесь}

writeln('summ=',summ:0:2,' abs summ=',summabs:0:2,' filename=',s);
close(f); {или здесь?}
readln;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата
Имеет ли значение

no1.gif Как только закончила работать с файлом, можешь сразу ставить Close(f)... Главное, чтобы не было попыток ПОСЛЕ Close произвести чтение/запись в файл...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: AleX

Репутация: -  -1  +


Помоему в етом куске если нет работы с файлами без разницы где поставить
close(f);


--------------------
...Купи слона, ну и что что все говорят продай слона...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Бывалая
***

Группа: Пользователи
Сообщений: 290
Пол: Женский
Реальное имя: Анютка

Репутация: -  7  +


После
writeln('summ=',summ:0:2,' abs summ=',summabs:0:2,' filename=',s);
чтение/запись в файл уже не производится, и если я поставлю close(f) ПОСЛЕ этой строки, это за ошибку/недочёт не будет считаться? blink.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Ошибки не будет однозначно, я бы и недочетом не считал...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Бывалая
***

Группа: Пользователи
Сообщений: 290
Пол: Женский
Реальное имя: Анютка

Репутация: -  7  +


To: HeX
А что тогда такое
read(f,t);
?



volvo, спасибо! Просветил give_rose.gif

Сообщение отредактировано: Анна -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 27
Пол: Мужской
Реальное имя: AleX

Репутация: -  -1  +


Там в моей фразе пропущено слово далее


--------------------
...Купи слона, ну и что что все говорят продай слона...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Новичок
*

Группа: Пользователи
Сообщений: 48
Пол: Мужской
Реальное имя: Fang

Репутация: -  2  +


В данном примере, вроде бы вообще не обязательно закрывать файл оператором close(f), т.к. он располагается в конце программы, а по окончании работы компилятор должен сам позаботится о закрытии...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гость






Fang, я бы например у тебя такую работу (без закрытого файла) не принял. А представь себе ситуацию, в которой ПОСЛЕ последнего обращения к файлу возникает Run-Time Error... НО !!! Файл не был закрыт. Что произойдет с его содержимым? Только хорошо подумай, прежде чем ответить !!!

Вот если файл закрыт, ничего не произойдет, это гарантируется ...

P.S. НИКОГДА не полагайся на компилятор...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Новичок
*

Группа: Пользователи
Сообщений: 48
Пол: Мужской
Реальное имя: Fang

Репутация: -  2  +


Цитата
Вот если файл закрыт, ничего не произойдет, это гарантируется ...

P.S. НИКОГДА не полагайся на компилятор...

Спасибо. Буду знать.

p.s. я ж писал
Цитата
вроде бы
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Прогрессор
****

Группа: Пользователи
Сообщений: 602
Пол: Мужской
Реальное имя: Михаил

Репутация: -  9  +


Цитата
Fang, я бы например у тебя такую работу (без закрытого файла) не принял. А представь себе ситуацию, в которой ПОСЛЕ последнего обращения к файлу возникает Run-Time Error... НО !!! Файл не был закрыт. Что произойдет с его содержимым? Только хорошо подумай, прежде чем ответить !!!

Вот если файл закрыт, ничего не произойдет, это гарантируется ...

P.S. НИКОГДА не полагайся на компилятор...


Точно!! 100%! Был у меня такой глюк на олимпиаде... dry.gif dry.gif Забыл поставить close, и на предварительном запуске прога работала нормально. Но потом в конце программы я дописал ещё один проход по файлу, и... В общем-то, конечно, разобрался, где ошибка, но лишних пять минут потерял sad.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 19.04.2024 19:27
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name