此代码一直给我错误,我不知道我做错了什么? 如何请求用户输入文件名,然后打开该文件并执行 有数据的任务。
示例:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main ()
{
ifstream inData;
ofstream outData;
string fileName;
cout << "Enter the data file Name : " << endl;//asks user to input filename
cin >> fileName; //inputs user input into fileName
inData.open(fileName); //heres where i try to open the file with the users input?
outData.open(fileName);
cout << fileName;
return 0;
}
代码一直给我错误。我试过用getline?我希望fileName是字符串 而不是char。
答案 0 :(得分:4)
您将std::string
个对象传递给参数,而不是实际的以null结尾的char指针。为此,请使用c_str
:
inData.open(fileName.c_str());
outData.open(fileName.c_str());