标题:文件读取在控制台输出问题
取消只看楼主
Jonny0201
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:52
帖 子:488
专家分:2603
注 册:2016-11-7
结帖率:100%
已结贴  问题点数:20 回复次数:1 
文件读取在控制台输出问题
#include <iostream>
#include <fstream>
#include <string>
#define N 9999
using namespace std;
int main(int argc, const char * argv[]) {
    string words[N];
    string wordsMeaning[N];
    int wordsNumber;
    ifstream infile;
    infile.open("WordsData.txt");
    infile >> wordsNumber;
    for(int i = 0; i < wordsNumber; i++) {
        infile >> words[i] >> wordsMeaning[i];
    }
    infile.close();
    cout << wordsNumber << endl;
    for(int i = 0; i < wordsNumber; i++) {
        cout << words[i] << " " << wordsMeaning[i] << endl;
    }
    return 0;
}

代码如上,大概就是把文件中的单词和单词意思分别读入两个数组中
在读入单词之前 先读入第一行的数字,这个数字是单词总个数
大致的问题就是在vs下选择开始调试,可以正常输出所有单词,但是选择开始执行就不能输出所有单词,只能输出变量wordsNumber
而wordsNumber并不是4500,而是一个负数
这说明在直接运行的时候,根本就没有读入第一行并且赋值给wordsNumber
想问一下如何去修改才能保证直接运行的时候也是输出所有单词
WordsDatas.txt的文件大致如下

在vs下直接运行结果:

在vs下调试窗口的结果:

在Xcode下调试的结果也是同样:
搜索更多相关主题的帖子: 控制台 include 
2017-05-19 17:58
Jonny0201
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:52
帖 子:488
专家分:2603
注 册:2016-11-7
得分:0 
回复 3楼 rjsp
把网页里面的代码写进去或者做了修改之后编译都过不了
试过GetCurrentPath()
vs2015也过不了编译
试着把关于这个工程下的所有目录都放一个WordsData.txt还是输出不出来
2017-05-20 14:17



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-477156-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.658815 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved