1
所以,我使用https://stackoverflow.com/a/298713/1472828把参数“hands.txt”时读取(我agrv [1],这是我想打开一个文件)在我的命令参数。我已经尝试过hands.txt和“hands.txt”,他们都没有工作。文件不能使用Visual Studio 2010调试器
int FileParsing(vector<Card> & v, char * FileName) {
ifstream ifs;
ifs.open(FileName);
if (!ifs.is_open()){
cout << "file cannot be opened." << endl;
} else {
所以我使用调试器逐句通过我公司主营:
int main(int argc, char * argv[]){
if (argc !=2){
//ErrorMessage();
} else {
...
调试器告诉我,我的argc是2,这是对的,但为什么每次调试刚刚进入
时间cout << "file cannot be opened." << endl;
这只是意味着该说法未能在看完
ifstream ifs;
ifs.open(FileName);
有什么我错过了,或者我以错误的方式通过了论点?
p.s.文本文件在cmd中完美读取,所以它不是代码问题。
疯狂的想法:既然你要发送的一切* *,但对'的argv [1]''到cout',也许让在乐趣也加入进来。至少你知道你有正确的论点。该参数从项目的调试器配置页面中程序参数行的IDE传递到程序。此外,您应该知道** VStudio默认从项目文件(.vcxproj)所在的同一文件夹运行程序,除非您更改它; *不是*生成后.exe所在的文件夹。** – WhozCraig 2013-03-10 00:55:58
谢谢!谢谢,这解决了问题! – HoKy22 2013-03-10 01:02:16
@WhozCraig你应该发布作为答案 – JaredPar 2013-03-10 01:03:58