Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 正在实施一些验证。。。卡住了_C++ - Fatal编程技术网

C++ 正在实施一些验证。。。卡住了

C++ 正在实施一些验证。。。卡住了,c++,C++,嘿,我正在尝试向我的程序添加一些验证,以确保加载了正确的文件,我的验证基于字典文件,我正在尝试实现一些东西,以确保文件中有正确类型的单词,例如名词和动词,我已经写了这个 if (!type.compare("n") == 0) { cout << "\nType is invalid please check file.\n" << endl; syst

嘿,我正在尝试向我的程序添加一些验证,以确保加载了正确的文件,我的验证基于字典文件,我正在尝试实现一些东西,以确保文件中有正确类型的单词,例如名词和动词,我已经写了这个

                    if (!type.compare("n") == 0) {
                    cout << "\nType is invalid please check file.\n" << endl;
                    system("Pause");
                }

这是布局,
word
定义
类型
和一条
空白
行,从外观上看,检查类型是否匹配所有组合<代码>n
v
adv
等。。。我想更改它,使其只搜索其中一种组合。下面是我精简的完整功能。

由于以下原因,您的比较有问题。表情

!type.compare("n") == 0
被编译器视为

(!type.compare("n")) == 0
这意味着当
type
“n”
时,表达式为false,如
!type.compare(“n”)
为“true”,并且无论如何都不等于零

取而代之的是

if (type.compare("n") != 0)
{
    ...
}
else // No need to do `if (type.compare("n") == 0)`
{
    ...
}
在这种情况下,不要使用
系统(“暂停”)
。只需退出应用程序。
if (type.compare("n") != 0)
{
    ...
}
else // No need to do `if (type.compare("n") == 0)`
{
    ...
}