C语言 将指针转换为数值以进行哈希处理 - 我应该使用"uintptr_t"还是"intp



我需要将任意指针转换为数值才能通过哈希函数传递它。

理想情况下,只是为了踢球,我也希望这个数字可以转换回同一个指针。但这不是必须的。

在浏览了SO和互联网之后,我不清楚uintptr_tintptr_t是适合这项工作的工具。大多数地方都提到uintptr_t,但有些地方说我可能会因为使用无符号类型而丢失原始指针的一些位。

欢迎作出澄清。

我需要将任意指针转换为数值才能通过哈希函数传递它。

两者都有,intptr_tuintptr_t.

我还希望该数字可转换回同一指针。

也可以将整数转换回指针值,并受 C 标准支持。

最新更新