Вопрос Код чтоб оно могло записать массив на 120к байт в файл и не крашило.

Продавец
Статус
Оффлайн
Регистрация
28 Окт 2019
Сообщения
1,153
Реакции[?]
302
Поинты[?]
3K
Ку, крч у меня программа хранит exe ввиде байтов и записывает в файл, использую этот код чтоб записать массив в файл:
C++:
  std::ofstream file;
    file.open("D:/1.dat", std::ios_base::binary);
    assert(file.is_open());

    for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); ++i)
        file.write((char*)(arr+ i * sizeof(arr[0])), sizeof(arr[0]));
    file.close();
при размере массива в 120к элементов крашит с ошибкой нарушение прав доступа бла-бла, короче этот код работает до 1к байтов в массиве. Как сделать чтоб он мог нормально записать? Другие способы незнаю
 
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Ку, крч у меня программа хранит exe ввиде байтов и записывает в файл, использую этот код чтоб записать массив в файл:
C++:
  std::ofstream file;
    file.open("D:/1.dat", std::ios_base::binary);
    assert(file.is_open());

    for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); ++i)
        file.write((char*)(arr+ i * sizeof(arr[0])), sizeof(arr[0]));
    file.close();
при размере массива в 120к элементов крашит с ошибкой нарушение прав доступа бла-бла, короче этот код работает до 1к байтов в массиве. Как сделать чтоб он мог нормально записать? Другие способы незнаю
За границы массива выходишь скорее всего. Покажи как массив создаешь
 
Сверху Снизу