С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
 
TrainFest
0 / 0 / 0
Регистрация: 09.11.2017
Сообщений: 1
1

Переписать массив структур из файла в память

09.11.2017, 21:39. Просмотров 215. Ответов 9
Метки tasm (Все метки)

Как из файла переписать массив структур с полями "автор книги", "название", "индекс" в массив структур в программе? Тасм под досбокс
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.11.2017, 21:39
Ответы с готовыми решениями:

Переписать подряд в массив Y положительные и в массив Z отрицательные элементы массива X
Переписать подряд в массив Y положительные и в массив Z отрицательные элементы...

Переписать в массив Y положительные и в массив Z отрицательные элементы массива X
нужно переписать подряд в массив Y положительные и в массив Z отрица-тельные...

Массив структур
Доброго времени суток! Подскажите пожалуйста как из нескольких структур создать...

Ввод файла в память.
Здравствуйте. Хочу ввести файл в память es. Приглашение ввести...

Массив структур, таблица, память
Здравствуйте, начну с того что не знал как назвать тему, назвал по проблемам....

9
ФедосеевПавел
Модератор
3860 / 2180 / 895
Регистрация: 01.02.2015
Сообщений: 7,263
09.11.2017, 23:17 2
Всё зависит от формата файла и от определения структуры в программе.
0
DavidJarr
0 / 0 / 2
Регистрация: 17.08.2017
Сообщений: 114
09.11.2017, 23:37 3
ФедосеевПавел, тоже интересно, вот если файл .txt, а массив в асме
Assembler
1
2
3
4
5
6
7
author STRUC            
bookname db 20 DUP (' ')
index db 3 dup(' ')
author ENDS
 
.DATA       
allstuct author <>, <>, <>
0
ФедосеевПавел
Модератор
3860 / 2180 / 895
Регистрация: 01.02.2015
Сообщений: 7,263
09.11.2017, 23:41 4
Если файл заполнен без символов перевода строк и все записи выровнены по длине полей - то считать прямо в массив - объявить адрес буфера чтения allstruct.
0
DavidJarr
0 / 0 / 2
Регистрация: 17.08.2017
Сообщений: 114
10.11.2017, 01:36 5
ФедосеевПавел,
все записи выровнены по длине полей
т.е. название книги только 20 символов, так?
Ну к примеру, если файл будет:
Название Автор 1 Название Автор 2 Название Автор 3
То просто в буфер считать?

Добавлено через 1 час 36 минут
ФедосеевПавел, можете написать как нужно такой файл заполнить данными?
0
ФедосеевПавел
Модератор
3860 / 2180 / 895
Регистрация: 01.02.2015
Сообщений: 7,263
10.11.2017, 08:18 6
В блокноте. Строго придерживаясь длины полей, записать все данные всего массива в ОДНУ строку.

Вы попробуйте заполнить такой массив из программы и запишите его в файл - сразу всё увидите.
0
DavidJarr
0 / 0 / 2
Регистрация: 17.08.2017
Сообщений: 114
10.11.2017, 20:19 7
ФедосеевПавел, выводит кроме того что надо мусор еще :С

Добавлено через 46 минут
ФедосеевПавел, всё ок уже, еще вопрос, оно поле структуры, то что индекс как строку запишет? к примеру если мне надо просуммировать индексы
0
ФедосеевПавел
Модератор
3860 / 2180 / 895
Регистрация: 01.02.2015
Сообщений: 7,263
10.11.2017, 21:06 8
В сообщении #3 index объявлен как строка из трёх символов. Значит и чтение/запись в файл - в виде строки.

Для суммирования индексов несколько возможностей
1. перевести индекс в число и суммировать
2. суммировать в виде неупакованных BCD (это несложно, но нужно вспомнить как)
0
DavidJarr
0 / 0 / 2
Регистрация: 17.08.2017
Сообщений: 114
10.11.2017, 21:50 9
ФедосеевПавел, а как перевести строку в число? По той ссылке, что все кидают наоборот перевод числа в строку для вывода
0
ФедосеевПавел
Модератор
3860 / 2180 / 895
Регистрация: 01.02.2015
Сообщений: 7,263
10.11.2017, 22:46 10
Там есть и строку в число. Только строка специфическая. Поэтому придётся слегка изменить код.
0
10.11.2017, 22:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.11.2017, 22:46

Как массив структур записать в динамическую память
Привет всем, осваиваю язык Си по-маленьку. Ума не приложу как этот массив...

Как выделить память под массив структур?
Привет всем! Помогите, не знаю как выделить память под массив структур. ...

Почему не очищает память, выделенную под массив структур
#include &lt;cstdlib&gt; #include &lt;iostream&gt; using namespace std; const int...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru