我是C ++的新手,我正在尝试使用seekp函数,以便在阅读时返回到我的二进制文件的开头。但是,Xcode编译器似乎无法识别搜索功能。编译器给出的错误是:
/ Users / ** / Desktop / Programming / Project / Project / Project.cpp:191:10:'std :: __ 1 :: basic_ifstream>'中没有名为'seekp'的成员
我做错了什么?
以下是代码:
#include <iostream>
#include <fstream>
using namespace std;
int main(){
ifstream f_in;
f_in.open("Pixmap.bin", ios::binary | ios::in);
ofstream f_out;
f_out.open("Pos.txt", ios::binary);
Handle_File_Errors(f_in, f_out);
Pixel_Counter(f_in);
f_in.seekp(0, ios::beg);
f_in.close();
f_out.close();
}
Pixel_Counter函数编写如下:
void Pixel_Counter (ifstream &f_in) {
uint null;
int i=0;
for (i=0; !f_in.eof();i++) {
f_in.read((char*)&null, sizeof(null));
}
cout<<i-6<<endl;
}
最后,Handle_File_Errors对read函数没有任何作用,只是检查ifstream和ofstream是否正常运行。