相关疑难解决方法(0)

C++中BigInt类的一个很好的基本实现

我正在寻找一个很好的基础BigInt类在C++中,我发现很多实现,但大多数时候,它是加密库的复杂实现...

基本上,我的意思是BigInt可以处理BigInt,long long和带有运算符重载的字符串.如果我有时间,我已经完成了自己,但我没有时间创建一个完整的BigInt类.

c++ biginteger bigint

14
推荐指数
2
解决办法
4万
查看次数

如何在C++中添加2个任意大小的整数?

我想在C++中添加2个任意大小的整数.我该怎么做呢?

c++ bignum arbitrary-precision

8
推荐指数
3
解决办法
5851
查看次数

C++将十六进制md5哈希转换为十进制整数

我正在做Elgamal签名方案,我需要使用消息中的十进制哈希值来计算S以进行签名生成.十六进制哈希的一个示例是:

820dbb4256a4287557ade2f729d279f1
Run Code Online (Sandbox Code Playgroud)

如上所示,哈希值是32位十六进制数.我需要将上面的字符串转换为十进制整数,然后将其用于计算.

    string hash = md5(message);
    cout << hash << endl;
    NTL::ZZ msgHash = strtol(hash.c_str(), NULL, 16);
    cout << msgHash << endl;
Run Code Online (Sandbox Code Playgroud)

没有足够大的整数来包含32字节十六进制哈希的值,所以我尝试了来自NTL库的大整数,但它没有解决,因为你不能分配从strtol函数返回的长整数(我认为十进制哈希值比NTL :: ZZ类型的长整数范围限制长.这有什么好的解决方案吗?

我在Visual Studio 2013中使用visual C++这样做.

c++ hash md5 biginteger

6
推荐指数
1
解决办法
1560
查看次数

如何在C ++中处理最大为2 ^ 9000000的整数

我知道的最大正整数数据类型是unsigned long long。有没有办法在C ++中处理2 ^ 9000000的整数。我在代码块中使用了gcc编译器,但也可以在Visual Studio上工作。

c++ integer-overflow unsigned-long-long-int

3
推荐指数
1
解决办法
111
查看次数

如何在 C++ 或 C 中创建具有自定义大小的 int

如何在 c/c++ 中创建具有自定义字节大小的类型?

  • 我想创建一个 128 个或更多字节的 int
  • 我使用了 struct 但它只能在 1 到 32 个字节的范围内创建
  • 我不想使用数组、向量或任何类似的东西
  • 我只想创建一个超过 128 个字节的 int

c c++ memory

-4
推荐指数
1
解决办法
274
查看次数