Hni*_*ahp 4 c++ boolean implicit-conversion do-while
我试图在C ++中找到与Java的in.hasNextInt等效的输入,我发现了这一点。
#include <iostream>
#include <vector>
int main ()
{
std::vector<int> myvector;
int myint;
std::cout << "Please enter some integers (enter 0 to end):\n";
do {
std::cin >> myint;
myvector.push_back (myint);
} while (myint);
std::cout << "myvector stores " << int(myvector.size()) << " numbers.\n";
return 0;
}
Run Code Online (Sandbox Code Playgroud)
但是我真的不明白为什么当输入为0时输入循环会停止。它的while(myint)
循环也使我感到困惑,因为myint
它是整数而不是布尔值。当我们输入其他内容时,它可以作为布尔值工作,myint
但我认为0仍然可以作为整数。有人可以向我解释一下吗?