我如何比较大小为 >=100 的两个数字字符串?因为使用 stoi 和 stoll 给我溢出 运行时错误



如何比较两个长度为100的数字字符串?因为在使用stoi和stoll时会出现溢出运行时错误

在抛出std::out_of_range实例后调用终止():斯托尔

str1="1234567894561236548752................."
str2="367869446879446589646..................."

我如何比较哪个更小/更大?

您不需要将字符串转换为整数进行比较。

首先,可以比较字符串的符号。如果一个是非负的,另一个是负的,很明显,非负的大于负的。

则可以比较字符串的长度。(假设两个字符串都是整数。如果字符串包含浮点数,则比较整型部分的长度。如果两个字符串都是非负的,则较长的字符串将大于较短的字符串。如果两个字符串都是负数,则较长的字符串较小。

如果两个字符串具有相同的整部分长度,则可以使用for循环,从左到右(从高到低)比较数字。

最新更新