考虑这段代码:
int xx;
std::cin >> std::setfill('0') >> std::setw(4) >> xx;
发送12
到标准输入时,我期望值为xx
,1200
发送时12345
我期望值为1234
。
但是,它似乎std::setfill
并std::setw
没有效果,我分别得到了12
和12345
。
这是一个错误还是根据标准?有没有获得预期功能的好方法?
另请注意,当我将类型更改为生效xx
但仍然没有生效时。std::string
std::setw
std::setfill
我的编译器是gcc-7.0.1
.