gpt4 book ai didi

c++ - getline 中的 "Invalid conversion"错误

转载 作者:太空狗 更新时间:2023-10-29 23:07:12 25 4
gpt4 key购买 nike

在这个程序中,我试图从文件中读取第三行文本,然后只取最后一个空格后的结尾。当我使用 getline 函数时,它给了我一个

idp_handler.cc:37: error: invalid conversion from ‘void*’ to ‘char’ (line 37 is the line of the first 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 只是指向我正在读取的文件的路径。

最佳答案

您应该使用 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);

<...>
}

关于c++ - getline 中的 "Invalid conversion"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13416069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com