Pra*_*kar 0 c++ string algorithm comparison
我应该如何比较C++中的两个字符串表示数字?我想转换为long long类型数但问题是字符串表示的数值可以超过long longMAX限制.保证字符串代表数值.
在Java中有一个类似的问题比较两个数字String值.但是这使用了我们在C++中没有的BigInteger库.
逐位比较它们:
a = "3254353245423345432423133423421"
b = "3254353245423345432443133423421"
for(int i = 0; i < a.length(); ++i):
if ((a[i] - '0') < (b[i] - '0'))
{
std::cout << "b is larger!"
}
Run Code Online (Sandbox Code Playgroud)
如果你想知道是否b大于a,或者它们是否相等,我相信你可以从这里拿走它.或者,如果它们的长度不同,则较大的一个会赢!(在开头检查零,即"000443342")不要忘记考虑负数.