|
VC++实现取得字符串的hash值
在VC++(Visual C++)中,您可以使用各种哈希算法来计算字符串的哈希值。一个常见的哈希算法是CRC32算法。以下是一个示例,展示了如何在VC++中使用zlib库计算字符串的CRC32哈希值:
- #include <iostream>
- #include <string>
- #include <zlib.h>
- unsigned int CalculateCRC32(const std::string& input)
- {
- uLong crc = crc32(0L, Z_NULL, 0);
- crc = crc32(crc, reinterpret_cast<const Bytef*>(input.c_str()), input.length());
- return static_cast<unsigned int>(crc);
- }
- int main()
- {
- std::string input = "Hello, World!";
- unsigned int crc32Value = CalculateCRC32(input);
- std::cout << "字符串 '" << input << "' 的CRC32哈希值为: " << crc32Value << std::endl;
- return 0;
- }
复制代码
在这个示例中:
- `CalculateCRC32` 函数接受一个 `std::string` 输入,使用 zlib 库中的 `crc32` 函数计算CRC32哈希值,并将哈希值作为 `unsigned int` 返回。
- `main` 函数演示了如何计算字符串的CRC32哈希值,并打印结果。
请确保在VC++项目中链接 zlib 库以使用 `crc32` 函数。您可以根据需要调整哈希算法或使用其他库。
|
|