Форум программистов, компьютерный форум CyberForum.ru

Подскажите как записать массив структур в файл - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Односвязный список. http://www.cyberforum.ru/cpp-beginners/thread239418.html
Привет -_- В моем понимании односвязный список это типо прямоугольнички, состоящие из двух - в одном из них типо содержание прямоугольничка (поле) а в другом указатель на посл. прямоуг. списка =D ну так вот... передо мной стоит задача 16. На основе односвязного списка организовать очередь. Че ваще от меня нужно 0_0 Поясните мне плиз задание. Я понимаю что такое очередь.
C++ Определить количество слов в тексте, оканчивающихся на гласную букву Помогите пожалуйста с заданием, особенно пункт 2 ... :( С помощью текстового редактора создать файл, содержащий текст, длина которого не превышает 1000 символов (длина строки текста не должна привышать 70 символов) Имя файла должно иметь расширение DAT Написать программу, которая 1) выводит текст на экран 2) определяет количество слов в тексте, оканчивающихся на гласную букву http://www.cyberforum.ru/cpp-beginners/thread239411.html
ОБРАБОТКА ДВУМЕРНОГО МАССИВА C++
Сформировать массив из сумм положительных элементов строк.
3. Ввести строку произвольной длины. Сосчитать количество слов в ней. C++
3. Ввести строку произвольной длины. Сосчитать количество слов в ней.
C++ Ввести строку произвольной длины.Распечатать все '*' в ней с порядковыми номерами http://www.cyberforum.ru/cpp-beginners/thread239371.html
Ввести строку произвольной длины.Распечатать все '*' в ней с порядковыми номерами
C++ Комплексные числа Здравствуйте! Как мне в С написать вычисление следующего значения R(коэффициент прохождения): l=exp(i*ky1*(-d)); j=i*ky1*(1-d); R=(exp(i*ky1*(y-d)-(d*l)/j)/(exp(i*ky1*(y-d)+(d*l)/j))); где i-это мнимая единица, ky1,d,y-константы подробнее

Показать сообщение отдельно
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
09.02.2011, 08:37     Подскажите как записать массив структур в файл
Цитата Сообщение от QWAN
Ты хотеш сказать что на разных компъютерах может отличатся размер моей структуры?
может много чего различаться: выравнивание внутри структур, направление байтов в переменных, размеры базовых типов
если ты сохраняешь файл на одном компьютере, то на другом компе его нельзя загружать, может исказиться
fread(), fwrite() со структурами можно применять в пределах одного компа

нужно сохранять структуру по частям и загружать по частям
C++
1
2
3
4
struct Fragment {
    Coord dwBufferSize;         // размер фрагмента
    Char_info *lpBuffer;        // буфер данных, здесь хранятся символы
};
запиши это в виде текста в файл

1ая запись
первое значение записываешь в виде числа
дальше через разделитель записываешь содержимое буфера
дальше конец записи

2ая запись
первое значение записываешь в виде числа
дальше через разделитель записываешь содержимое буфера
дальше конец записи

при считывании можно читать записи пока они читаются, а можно в начале файла записать число записей, чтобы определить цикл чтения записей

Код
3
12 abcdeabcdeab;
3 abc;
8 abcdeabc;
 
Текущее время: 16:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru