Что значит "передать в виде образа оперативной памяти" - C (СИ)
Формулировка задачи:
ребят, помогите, очень нужно.
есть задание и есть код, нужно чуть чуть подправить, я не понимаю как
задание:
создайте программу, вводящую с клавиатуры произвольное кол-во пар вещественных чисел и записывающую их попарно в виде образа оперативной памяти в файл. после окончания ввода содержащиеся в файле числа попарно считываются из него и суммы их квадратов записываются в текстовый файл в виде отдельных текстовых строк
в следующем посте кину код, который у меня получился, но нужно сделать так чтобы числа передавались не в file_1, а в виде образа оп памяти, чтобы нельзя было их просмотреть в общем.
#include
#include
int main(void)
{
float var_1,var_2;
FILE *file_1,*out;
char name_file_1[]="name_file_1.txt",name_out[]="name_out.txt";
short flag=0;
file_1=fopen(name_file_1,"w");
while (scanf("%f",&var_2)!=-1)
{
if (!flag)
{
var_1=var_2;
flag=1;
}
else
{
fprintf(file_1,"%a%a\n",var_1,var_2);
flag=0;
}
}
fclose(file_1);
file_1=fopen(name_file_1,"r");
out=fopen(name_out,"w");
flag=0;
while (fscanf(file_1,"%a",&var_2)!=-1)
{
if(!flag)
{
var_1=var_2;
flag=1;
}
else
{
fprintf(out,"%g\n",pow(var_1,2)+pow(var_2,2));
flag=0;
}
}
fclose(file_1);
fclose(out);
return 0;
}
Решение задачи: «Что значит "передать в виде образа оперативной памяти"»
textual
Листинг программы
fwrite( &var, sizeof( float ), 1, fp );
Объяснение кода листинга программы
В представленном коде происходит запись одного значения типа float в файл с помощью функции fwrite(). Давайте разберем этот код по шагам:
var
- это переменная типа float, значение которой мы хотим записать в файл.sizeof(float)
- это операция, которая возвращает размер памяти, занимаемый типом данных float. Это нужно для того, чтобы функция fwrite() знала, сколько байтов данных нужно записать.1
- это количество элементов, которые мы хотим записать. В данном случае только одно значение.fp
- это файловый указатель, который указывает на файл, в который мы хотим записать данные. Таким образом, в данном коде мы передаем в функцию fwrite() адрес переменнойvar
, размер этой переменной в байтах (который функция fwrite() использует для определения количества байтов для записи), количество элементов (в данном случае 1) и файловый указательfp
, который указывает на файл, в который мы хотим записать данные. После выполнения этого кода, значение переменнойvar
будет записано в файл.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д