我应该如何比较两个表示 C++ 中数字的字符串?我想过转换为 long long
类型的数量,但问题是字符串表示的数值可能超过 long long
MAX 限制。保证字符串代表一个数值。
Java 中有一个类似的问题 比较两个数字字符串值。但这利用了我们在 C++ 中没有的 BigInteger 库。
原文由 Prashant Bhanarkar 发布,翻译遵循 CC BY-SA 4.0 许可协议
我应该如何比较两个表示 C++ 中数字的字符串?我想过转换为 long long
类型的数量,但问题是字符串表示的数值可能超过 long long
MAX 限制。保证字符串代表一个数值。
Java 中有一个类似的问题 比较两个数字字符串值。但这利用了我们在 C++ 中没有的 BigInteger 库。
原文由 Prashant Bhanarkar 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答3.3k 阅读
逐位比较它们:
如果你想知道
b
是否大于a
,或者它们是否相等,我相信你可以从这里获取它。或者,如果它们的长度不同,则较大的获胜! (检查开头是否为零,即"000443342"
)不要忘记考虑负数。