|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.06.2012, 08:57 | #1 |
Форумчанин
Регистрация: 16.01.2011
Сообщений: 168
|
Почему read не вводит строку со структуры?
Код:
|
26.06.2012, 09:29 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
почитайте, чем отличаются Read и ReadLn..
фактически, ответ на ваш вопрос. вам нужно заменить read(i) на ReadLn(i) и когда ввели дату - в конце выполнить Readln но я позволил себе ещё небольшие изменения в код внести (избавился от глобальных переменных, которые - ЗЛО! Код:
Последний раз редактировалось Serge_Bliznykov; 26.06.2012 в 09:32. |
26.06.2012, 09:40 | #3 |
Форумчанин
Регистрация: 16.01.2011
Сообщений: 168
|
Всё ясно спс!
|
26.06.2012, 10:08 | #4 |
Форумчанин
Регистрация: 16.01.2011
Сообщений: 168
|
А как сделать чтение с файла и запись в файл, сразу структуры?
Почему так ругается? Код:
|
26.06.2012, 10:14 | #5 |
Форумчанин
Регистрация: 16.01.2011
Сообщений: 168
|
как сделать типизированный файл на структуру NOTE?
|
26.06.2012, 10:21 | #6 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
во-первых, вам нужно использовать не абстрактный f : file, а строго ТИПИЗИРОВАННЫЙ файл! (это файл ОПРЕДЕЛЁННОГО типа.
во-вторых, можно выбрать два подхода. 1-й (рекомендую). каждый элемент файла - это ОДНА запись типа NOTE. Это позволит эффективно читать/писать только НУЖНУЮ запись. Это подход не зависит от размерности массива в программе. Её можно изменять так, как удобно (и даже использовать динамические структуры) именно такой подход и используется в подавляющем большинстве случаев использования типизированных файлов! вот пример, как можно записать ваш массив в файл такого типа: Код:
2-й. (не рекомендую). Вы именно его и пытались реализовать. назначаете файл - как типизированный, где ОДИН элемент - это ЦЕЛИКОМ весь массив: Код:
НЕУДОБСТВА!. Если изменить размер массива, тогда прочитать записанный ранее файл будет НЕЛЬЗЯ (ведь тогда размер структуры изменяется). Даже если у вас в массиве используется один элемент (N равно 1), на диске всё развно запишется 100 (maxrecord) элементов типа NOTE. короче, прежде чем Вы выберёте второй способ использования типизированного файла, рекомендую трижды подумать - точно ли это Вам надо! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
почему в данной программе по условию мы вводит отрицательные числа? | Настяyu | Помощь студентам | 20 | 28.12.2011 15:09 |
почему не правильно заполняет поля структуры ... ??? | MichaelRED | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 1 | 09.06.2010 17:49 |
Почему вылетает ошибка Read beyond end of file? | KoBRaAndrey | Общие вопросы Delphi | 4 | 24.01.2010 11:24 |
Почему не вводит в поток??? | girkoff | Общие вопросы C/C++ | 1 | 07.11.2009 14:27 |
Программа Вводит символьную строку и число N и выводит строку, состоящую из первых N символов (С++) | Yulai | Помощь студентам | 1 | 11.05.2009 11:39 |