向main函数输入参数,却无法打开文件的问题

众所周知,向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;另一个是每次改完,鼠标点至命令参数,然后再点应用,一定要记得保存,不然仍然无效!


猜你喜欢

转载自blog.csdn.net/hgtjcxy/article/details/79252392