我有以下代碼,我試圖讀取文件的內容並顯示它,並寫入另一個文件。我的問題是我在屏幕上獲得的內容與文件的內容完全不同。我已經把結果的文件和部分的內容部分顯示如何讀取使用fread()中的結構的內容c
#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
源文件和目標文件具有精確副本
這就是我一直在尋找的東西。太感謝了! – John