Здравствуйте!
Есть незамысловатый код в рамках исследования возможностей записи в файл различными способами.
Но почему-то, на первый взгляд вполне логичное выражение, вызывает исключение вследствие нарушения прав доступа. В данном случае, как я понимаю, права доступа к ячейке массива. А если я захочу записывать из массива в цикле по какому-либо условию? Т.е. эту ячейку запишу, а вот эту нет? В данном коде такого цикла с условиями нет, это на будущее.
Код вот такой. Ниже скрин с результатом ошибки. Прошу знающих подсказать в чем дело.
#include <iostream>
#include<fstream>
#include<filesystem>
namespace fs = std::filesystem;
using namespace std;
int main()
{
system("chpc 1251>nul");
int arr[10];
for (int j = 0; j < 10; j++)
arr[j] = j;//заполнить массив
fs::create_directories("C:\\ПАПКА1");
ofstream of;
of.open("C://ПАПКА1//file12.dat");
of.write(reinterpret_cast<char*>(arr[4]), sizeof(int));
of.close();
int var=0;
for (int j = 0; j < 10; j++)
arr[j] = 0;
ifstream ifs;
ifs.read(reinterpret_cast<char*>(var), sizeof(int));
cout << var;
}