众所周知,向main输入文件的地址,是可以打开项目外的文件的(如果只用ifstream(“文件名.txt”),就无法打开项目外的文件)。但是,笔者目前也碰到了一个问题,即向main内输入参数,却仍然无法打开文件,不知道为什么。
经过不断地尝试,笔者想到了几个方法。(感觉纯属vs2017自己的bug问题)
1.
#include<iostream>
#include<string>
#include<vector>
#include<fstream>
using namespace std;
int main(int argc, char *argv[])
{
/*for (int i = 0; i < argc; i++)cout << argv[i]; */
ifstream input(argv[1]);
vector<string> vec;
string tmp;
while (getline(input, tmp))
{
vec.push_back(tmp);
}
for (auto v : vec)
cout << v << endl;
system("pause");
return 0;
}
用main函数花括号内/* */部分进行调试,使命令框能输出字符后,然后再复制黏贴自己想要输入的地址,就可以运行了
2.对于红圆圈画的部分,一个是命令参数,可能部分需要手写,不能crtl+v;另一个是每次改完,鼠标点至命令参数,然后再点应用,一定要记得保存,不然仍然无效!