在这个程序中,我正在尝试从文件中读取第三行文本,然后仅在最后一个空格之后读取它的结尾。当我使用getline函数时它会给我一个
idp_handler.cc:37:错误:无效转换为'void *'到'char'(第37行是第一个getline的行)
这是我的代码
void idp_handler::resume() {
ofstream myfile;
myfile.open (PATH_R);
string read;
getline (myfile, read);
getline (myfile, read);
getline (myfile, read);
for(int i = read.size()-1; read[i]==' '; i--) read = read.substr(i,read.size()-i);
cout << "karp" << read << "karp" << endl;
}
PATH_R只是指向我正在阅读的文件的路径。
答案 0 :(得分:1)
您应该使用std::ifstream
,并始终使用std::
作为前缀,而不是将std
名称空间导入全局名称空间以避免冲突:
void idp_handler::resume() {
std::ifstream myfile;
myfile.open (PATH_R);
std::string read;
std::getline (myfile, read);
std::getline (myfile, read);
std::getline (myfile, read);
<...>
}