在文本文件中搜索int数字

时间:2017-04-30 01:47:47

标签: c++ text

我有一个文本文件。 存储在其中的所有值都是整数。 当我比较我搜索的数字和存储在文本文件中的数字时,结果是不正确的!

我的代码:

ifstream infile ("h1.txt");
if (!infile)

{
    cout << "Can't open file" << endl;
    exit (EXIT_FAILURE);
}
int n;
infile >> n;
while(!infile.eof()){
    if (n!=search)
    {
        return false;
    }
    else{
        return true;
    }
    infile>>n;
}

为什么即使n等于搜索,编译器也会将结果视为false?

2 个答案:

答案 0 :(得分:2)

您只是从文件中读取第一个数字是否正确。当代码到达h2 { text-align: right; padding-right: 40%; }时,函数的执行结束。

答案 1 :(得分:-1)

我解决了问题,数字仅存储最后一个值,即数字的值 如果找到的搜索将作为搜索因此,条件将是真实的 bool值也将为true但是当文件读取的值不等于搜索时编译器也会在else部分中输入并使bool变量为false虽然搜索已建立!(特别是当在文件开头找到搜索号时) ,所以我通过删除else来解决它,并且当且仅当在文件中建立搜索时才使bool变量为true。希望你理解