- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我对使用 unsetf
有疑问.以下是为格式化数字获取正确输入的答案。
Actually, You can force
operator>>
to get and properly interpret prefixes0
and0x
. All you have to do is to remove default settings forstd::cin
:std::cin.unsetf(std::ios::dec);
std::cin.unsetf(std::ios::hex);
std::cin.unsetf(std::ios::oct);Now, when you input
0x1a
you will receive26
.
我不明白 hex
和 oct
的最后两个 unsetf
命令。如果我仅将 unsetf
与 dec
一起使用,我会得到正确的输入,我的意思是输入 0x1a
并接收 26
。
那么对hex
和dec
使用unsetf
有什么意义呢?
最佳答案
I don't understand the last two unsetf commands for hex and oct
如果 hex
和 oct
标志之前没有设置,是的,取消设置 dec
就足够了:
std::cin.unsetf(std::ios::dec);
int n;
std::cin >> n; // 0x1a
std::cout << n; // 26
( demo )
但是,如果之前设置了这些标志,它们可能会影响十六进制数的解析:
std::cin.unsetf(std::ios::dec);
int n;
std::cin >> n; // 0x1a
std::cout << n; // 0
( demo )
所以,如果你想让 std::cin
通过猜测它们的基数来解析你的数字,你应该 unsetf
hex
, dec
和 oct
。
关于c++ - 在 C++ 中将 unsetf 与十六进制十进制数和八进制数一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52180409/
需要帮助将这些给定的数字打印成星号,但我是编程新手;我该怎么做? #include int main(void) { int a[5]={20,1,5,15,12}; int i=0
使用 Delphi XE 2 我试图确定缩放方向以将缩放效果应用于图像(TImage),但没有找到执行此操作的函数,并且图像的 OnGesture 事件中的 EventInfo 属性没有此信息. 我见
我不知道制服在内存中是如何表示的。 制服似乎会占用宝贵的寄存器空间,但它们最终会传入/通过/传出到全局内存中,对吗? 制服不用时情况会发生变化吗?编译器可以将它们优化掉吗?--在这种情况下,我已经将无
我正在尝试在名为“timeclock”的模型上记录“time_in”和“time_out”记录。这是我想做但无法开始工作的事情! 检查最后一个时钟条目,看看它是否同时填充了“time_in”和“tim
我想听听您如何解决这种编程任务!?每种类型(OPER = 1 类型)对应一种特定的信息。 这只是大约 10 个具有相同结构的规范之一。首选创建这些“转换器”(协议(protocol))的通用方法。 最
我正在使用 Rest API(NodeJS、Express)和 PostgreSQL 制作 React-Native 应用。 在我的本地机器上托管时一切正常。当 API 托管在我的机器上并且 Post
我是一名优秀的程序员,十分优秀!