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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Односвязный список. http://www.cyberforum.ru/cpp-beginners/thread239418.html
Привет -_- В моем понимании односвязный список это типо прямоугольнички, состоящие из двух - в одном из них типо содержание прямоугольничка (поле) а в другом указатель на посл. прямоуг. списка =D ...
C++ Определить количество слов в тексте, оканчивающихся на гласную букву Помогите пожалуйста с заданием, особенно пункт 2 ... :( С помощью текстового редактора создать файл, содержащий текст, длина которого не превышает 1000 символов (длина строки текста не должна... 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))); ... подробнее

Показать сообщение отдельно
accept
4822 / 3243 / 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;
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru