![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Пользователь
Регистрация: 09.11.2014
Сообщений: 40
|
![]()
Пишу однофайловую базу данных на СИ по теме "Видеокарты". Все записи в базе данных реализую в динамическом массиве структур, то есть 1 запись=1 структура. Написал всю базу данных, осталось сделать только чтение из файла и сохранение в файл. То есть я хочу, чтобы в начале работы программы массив структур считывался из файла, а затем, если пользователь выберет соответствующий пункт меню, - массив записывался (сохранялся) в файл. Сохранение вроде хорошо работает, но, когда вставляю в начало программы функцию чтения из файла, программа начинает работать неправильно. А именно при запуске программы вылазит пустая консоль, в которой абсолютно ничего нельзя сделать. В чём моя ошибка?
P.S. В исходном коде убрал различные участки кода, никак не связанные с этой проблемой, чтобы вы могли быстрее в нём разобраться. Поэтому не надо писать, что где-то какие-то входные данные не проверяются или плохое оформление интерфейса. Как я понимаю, ошибка находится где-то в функции чтения из файла ( fileReading() ). Чтобы удостовериться, что сохранение массива в файл работает нормально, занесите вызов функции fileReading() в комментарий. P.P.S. Весь код в одно сообщение не вместился, поэтому оставшуюся часть написал во втором сообщении. Код хоть и кажется большим, но разобраться в нём совсем несложно. Код:
Последний раз редактировалось Аватар; 03.06.2015 в 06:41. |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 09.11.2014
Сообщений: 40
|
![]() Код:
Последний раз редактировалось Аватар; 03.06.2015 в 06:41. |
![]() |
![]() |
![]() |
#3 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Код:
Кстати могу предложить такое: http://www.programmersforum.ru/showthread.php?t=105501 Т.е. Работать с файлом без размещения всего сразу в памяти.
I'm learning to live...
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 09.11.2014
Сообщений: 40
|
![]()
Спасибо, очень сильно помог. Разобрался в работе твоего алгоритма. Вот получившаяся функция чтения структур из файла в динамический массив:
Код:
Последний раз редактировалось Pug_from_Mordor; 03.06.2015 в 22:45. |
![]() |
![]() |
![]() |
#5 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
А я бы на твоем месте сделал так как DBF - хранил бы в начале файла кол-во записей. Чтоб не становиться в конец и вычислять размер, а сразу - считал int, создал массив и следующим же чтивом его наполнил.
I'm learning to live...
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 09.11.2014
Сообщений: 40
|
![]()
Если время останется, то попробую. В моей базе данных есть ещё одна проблема: когда пользователь вводит 0 в меню после добавления записи, программа должна закрыться, а она прекращает свою работу(вылазит новое окно о прекращении). Тут дело даже не в работе с файлом, а именно в добавлении структуры в массив.
Причём ошибка из-за инициализации численных переменных в структуре. Код тот же, только без функций работы с файлом. Можете посмотреть? Код:
Последний раз редактировалось Stilet; 04.06.2015 в 09:18. |
![]() |
![]() |
![]() |
#7 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#8 | |
Пользователь
Регистрация: 09.11.2014
Сообщений: 40
|
![]() Цитата:
Код:
Последний раз редактировалось Stilet; 04.06.2015 в 17:15. |
|
![]() |
![]() |
![]() |
#9 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Чтение из файла | V1rus.25 | Помощь студентам | 9 | 15.04.2013 17:10 |
Чтение из файла | clasterit | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 04.11.2011 17:46 |
TP7 чтение из файла, работает но не работает!? | Qousio | Помощь студентам | 7 | 02.06.2009 09:37 |
Чтение из файла | Amen | БД в Delphi | 2 | 09.12.2008 10:40 |
Чтение из файла | Need_Help | Паскаль, Turbo Pascal, PascalABC.NET | 5 | 19.05.2007 05:37 |