Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Ассоциативный массив map c двумерным массивом Искал информацию в интернете но безрезультатно. Необходимо сделать ассоциативный массив с со строковым ключом и двумерным массивом 3х3 в качестве значения ключа. создаю ассоциативный массив: map <string,int> MyMap; а как его заполнить?? (конкретно массив 3х3) пробовал так: dungeon_layout = {{1,1,1},{1,0,1},{1,1,1}}; https://www.cyberforum.ru/ cpp-beginners/ thread869732.html C++ Ввод текста в графическом режиме
Здравствуйте, можно ли вводить текст в графическом режиме (консольная графика)? Как это реализовать?
C++ Удаление памяти посредством delete[] https://www.cyberforum.ru/ cpp-beginners/ thread869717.html
Добрый день! Столкнулся с проблемой: при удалении выделенной памяти, программа зависает, будто не способна выполнить данный оператор. Ошибок при компиляции не возникает, может кто-то знает, в чём могла бы закрасться проблема? Заранее большое спасибо! int MyArray::iliffeView(int a, int b, int c, int d) { int *vector = new int; int x = 0; for(int i = 0; i <= high - low; ++i) for(int...
C++ Разработать класс Car (автомобиль) https://www.cyberforum.ru/ cpp-beginners/ thread869709.html
Разработать класс Car (автомобиль). Объявить переменные типа этого класса. Определить данные и методы.
C++ Деление стороны квадрата на N равных частей
Здравствуйте, уважаемые форумчане! Нужна помощь со следующим заданием: "Каждую сторону квадрата разделить на N равных частей. Соединить все точки разбиения, включая вершины, отрезками. Число разбиений N ввести с клавиатуры. Обеспечить контроль правильности ввода и возможность стирания символов, которые введены ошибочно. Центр квадрата и одну точку, принадлежащую стороне квадрата, отметить...
C++ Вычислить значения функции Помогите пожалуйста написать программы на turbo C++. Задания простые, а я не могу((((. 1)Вычислить значения функции при A=1.5, B=2, C=2.5 (константы) и произвольном x (ввести с клавиатуры). z={B}^{x}+\frac{A}{{x}^{C}}+\sqrt{\mid A-x\mid } Надеюсь на Вашу помощь! Alex1309, правила форума: один вопрос - одна тема. Ваши задания вынесены в отдельные темы: ... https://www.cyberforum.ru/ cpp-beginners/ thread869696.html
C++ Деление стороны квадрата на N равных частей https://www.cyberforum.ru/ cpp-beginners/ thread869695.html
Здравствуйте, уважаемые форумчане! Нужна помощь со следующим заданием: "Каждую сторону квадрата разделить на N равных частей. Соединить все точки разбиения, включая вершины, отрезками. Число разбиений N ввести с клавиатуры. Обеспечить контроль правильности ввода и возможность стирания символов, которые введены ошибочно. Центр квадрата и одну точку, принадлежащую стороне квадрата, отметить...
Минимальное количество байт, которое займёт отрицательное число C++
Нужно узнать минимальное количество байт, которое займёт число. То есть в int у нас может быть число и 256 (00000001 00000000), которое займёт 2 байта, и 255 (00000000 11111111), которое может занять всего 1 байт. Нужно вычислить это минимальное количество. Написал функцию: int BytesCount(int Number) { int NumberOfBytes = 0; do { Number = Number >> 8;
C++ Вводится последовательность из N целых чисел. Найти максимальное совершенное число в последовательности, если таких несколько, вывести их количество ( https://www.cyberforum.ru/ cpp-beginners/ thread869687.html
Вводится последовательность из N целых чисел. Найти максимальное совершенное число в последовательности, если таких несколько, вывести их количество (функцией оформить проверку числа: результатом функции будет 1 – число совершенное, 0 - нет). (Совершенное число – это целое число, у которого сумма всех делителей, меньших его самого, равна этому числу). Помогите доработать пожалуйста...
C++ Разработать классы и создать объекты для вероятностного анализа входного массива чисел https://www.cyberforum.ru/ cpp-beginners/ thread869669.html
Разработать классы и создать объекты для вероятностного анализа входного массива чисел (нахождение моментов 1-го и 2-го порядков и других статист. характеристик)
C++ Брутфорс (brute force)
Мне нужно получить все возможные комбинации 4 чисел. Сумма чисел должна быть ровна 1. Тоесть нужно следующее: 0 0 0 1 0 0 0,1 0,9 0 0 0,2 0,8 0 0 0,3 0,7 0 0 0,4 0,6 .... Помогите пожалуйста.
C++ Динамический список, беглый указатель https://www.cyberforum.ru/ cpp-beginners/ thread869657.html
Здравствуйте, помогите решить следующую проблему: в задании сказано создать двусвязный динамический список и произвести с ним некоторые действия. Список создан, заполнен, но не могу в функцию передать указатель на конец списка. Если указатель на начало передан, то на конец не получается, так как след его теряется после функции объявления и заполнения списка. #include <iostream> #include...
5499 / 4894 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
19.05.2013, 14:09 0

fwrite\fread: чтение и запись в бинарные файлы - C++ - Ответ 4579512

19.05.2013, 14:09. Показов 6932. Ответов 16
Метки (Все метки)

Ответ

Цитата Сообщение от Gerbasha Посмотреть сообщение
В общем решил проблему так:
Это все очень криво. Не видно как объекты класса создаются. Если поле класса указатель, то под него, в конструкторе, память обычно выделяется. А если память выделена, то в неё уже можно читать из файла, а не создавать дополнительную переменную, адрес которой присваивается полю-указателю.

Добавлено через 3 минуты
Это код только для проверки (как приблизительно должно выглядеть):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
class tPoint
{
private:
    float mX,mY;
    float *mDescriptor;
public:
    tPoint()
    {
        mX = 0.0;
        mY = 0.0;
        mDescriptor = new float(0.0);
    }
 
    tPoint(float x, float y, float z)
    {
        mX = x;
        mY = y;
        mDescriptor = new float(z);
    }
 
    void Write(FILE *f)
    {
        fwrite(&mX, sizeof(float), 1, f);
        fwrite(&mY, sizeof(float), 1, f);
        fwrite(mDescriptor, sizeof(float), 1, f);
    }
 
    void Read(FILE *f)
    {
        fread(&mX, sizeof(float), 1, f);
        fread(&mY, sizeof(float), 1, f);
        fread(mDescriptor, sizeof(float), 1, f);
       }
       
     void Print()
     {
        printf("%f\n",  mX);
        printf("%f\n", mY);
        printf("%f\n", *mDescriptor);
     }
};
 
int main()
{
 
    tPoint obj(5.0, 5.0, 5.0);
    FILE *f;
    f = fopen("info.dat", "wb");
    obj.Write(f);
    fclose(f);
    
    tPoint obj2;
    f = fopen("info.dat", "rb");
    obj2.Read(f);
    fclose(f);
               obj2.Print();
              
 return 0;
}


Вернуться к обсуждению:
fwrite\fread: чтение и запись в бинарные файлы C++
1
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.05.2013, 14:09
Готовые ответы и решения:

Бинарные файлы, чтение и запись
Доброго времени суток. Подскажите пожалуйста, как организовать побайтовое чтение и запись данных в...

Запись / чтение из файла через fwrite/fread
Итак здравствуйте) объясниет пожалуйста что за баг))) простенькая вроде программа. записываем...

Кроме .txt файла, еще какие файлы можна использовать в операторах php (fopen,fread,fwrite)?
Можем ли работать с файлами, .doc, .xls, .html, .db и.т.д

Функции fread() и fwrite()
Меня интересует что это за &quot;счётчик&quot; в этих функциях fwrite( massiv, *size_int * sizeof(unsigned...

16
19.05.2013, 14:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.05.2013, 14:09
Помогаю со студенческими работами здесь

Fread,fopen,fwrite
Добрый день, пытаюсь считать бинарно данные из файла с помощью fread, а далее записать в другой...

Fread() & fwrite()
Помогите пожалуйста ,не могу понять как использовать функции fread() и fwrite(). И если можно...

Fread/fwrite size vs count
Есть ли практическая разница между указанием полного размера только в size или же в size*count,...

Аналог С функции fread и fwrite в С++
Здравствуйте, какие есть аналоги функций fread() fwrite в С++?

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru