Суть такая, пишу аля "Архиватор", суть такая, имеется структура:
struct File {
char *fileName;
char *fileContent;
unsigneв int fileSize;
}
После чего начинаю обрабатывать файл, который вводит пользователь:
P.S.: {Прошу сразу прощения, будет скриншот, не могу сделать захват текста с виртуальной машины
Кст, да, пишу на Си под Linux.}
Я определяю размер файла, который на вход, после чего выделяю память для ПЕРЕМЕННОЙ структуры, чтобы потом fread в эту переменную содержимое файла, сохраняю всю структуру в файл. Почему-то бинарный файл меньше исходного, хотя там структура. Исх. файл 13 байт "Hello world!", а бинарный где-то 6-7 байт получается, не понимаю почему так.
И как потом прочитать эту структуру, если я выделял память отдельно еще под содержимое?
Пробовал выделить для структуры память в видеstruct File *test = malloc(struct File) и прочитать файл fread(test, РАЗМЕР_ФАЙЛА, 1, ФАЙЛ), но выдает ошибку, не могу разобраться, как прочитать файл? Но у меня еще есть ощущение, что я неправильно делаю запись в бинарник, насчет того, что выделяю память отдельно для переменной еще.