У меня есть следующий код, где я пытаюсь прочитать содержимое файла и отобразить его, а также записать в другой файл.Моя проблема в том, что содержимое, которое я получаю на экране, полностью отличается от содержимого файла.Я поместил части содержимого файла и части отображаемого результата
#include<iostream>
#include <stdint.h>
#include <stdio.h>
struct test
{
uint64_t start;
uint16_t length;
struct test *next;
};
void main()
{
char frd[32];
std::cout<<"\nEnter name of file to read?\n";
std::cin>>frd;
FILE *rd=fopen(frd,"r+b");
FILE *wrt=fopen("abc2.doc","w+");
struct test test_st;
while(fread (&test_st, sizeof(test_st), 1, rd))
{
fwrite (&test_st,sizeof(test_st),1,wrt);
printf("%llu,%u\n", test_st.start, test_st.length);
}
fclose(rd);
fclose(wrt);
}
Частичное содержимое исходного файла:
0,43
43,95
138,159
297,279
576,153
729,64
Первые несколько строк отображаемого результата:
3474018176930688048,13879
3472896773804077344,14136
4049914982932231728,13362
3978707281317738034,12342
3474306356368193848,14132
3688511012684903220,14130
724298015681099573,13624
Исходные и конечные файлы имеют точные копии