gpt4 book ai didi

c++ - 负数的 lexical_cast 在不同的机器上表现不同

转载 作者:行者123 更新时间:2023-11-28 05:49:47 25 4
gpt4 key购买 nike

我在两个不同的设备上有相同版本的 boost ,但行为不同

lexical_cast<uint>("-1")

文档指出它应该给我 INT_MAX(2 的补码翻转)但是在一台机器上我得到一个异常抛出而在另一台机器上我得到 INT_MAX。

最佳答案

显然,如果您查看 lexical_cast 的 boost 代码使用这样的代码加载和操作输入 interpreter << arg; interpreter >> result>>运算符(operator)

this->setg(start, start, finish);             
std::basic_istream<CharT> stream(static_cast<Base*>(this));
stream.unsetf(std::ios::skipws);

它使用 std::basic_istream所以不同版本的 libstdc++ 会导致 lexical_cast在不同的机器上表现不同。

关于c++ - 负数的 lexical_cast 在不同的机器上表现不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35512705/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com