1

我正在学习 C++,因此是初学者的问题。

iostream cin 具有错误状态错误标志,如 goodbit、eofbit、failbit、badbit

我可以通过将它们放在手表中来查看这种变化吗?如果是这样,我要写什么?如果不是,我怎么能看到错误状态标志是如何变化的?

4

1 回答 1

0

cin在调试时在 Watch 窗口中显示标志:

在观察窗口中输入:

std::cin.flags()

或者

std::cin.good()

等等

但是:这可能不会立即起作用。

默认项目配置链接 C(++) 运行时库是动态的(即使用 DLL)。调试器/监视似乎存在问题,如果函数在 DLL 中定义,则必须指定函数的上下文,请参阅此 SO question

一个快速的解决方法是将项目设置为静态链接到 C(++) 运行时库;在 VS2010 中,它位于项目配置 -> C/C++ -> 代码生成 -> 运行时库 -> 设置为“多线程调试”(而不是“多线程调试 DLL”)。

于 2013-05-14T18:35:35.987 回答