c - 如何将存储在char数组中的地址转换为实际地址?

标签 c

我有以下字符数组:

char hex[16] = "0x7fffa410c240"

我如何将它转换成可以分配给另一个变量的数字地址。 重要的是我必须保持值(value)的基础保持不变,即 16(十六进制)。 提前致谢。

最佳答案

尝试函数 strtoull返回 unsigned long long

在 Visual Studio 上 strtoull 不可用,但是 _strtoui64大概可以用。

编辑

作为R..在评论中提到你应该使用 sscanf(hex, "%p", ..)strtoumaxstrtoull 具有相同的原型(prototype)但返回一个 uintmax_t

关于c - 如何将存储在char数组中的地址转换为实际地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7514546/

相关文章:

c - 执行“if…else”语句时出现问题

C语言中的单词计数

c - 是否可以调用驻留在 exe 中的非导出函数?

代码没有正确输出

c - 使用 libcrypto 将哈希复制到字符数组

c - 如何延长 clock() 执行时间

c - 为什么 C 编译器在编写一个不返回任何内容且没有副作用的函数时不会给出警告?

c++ - 我可以有条件地替换预处理器参数吗?

c - 使用 pthread 我的应用程序内存使用量正在增长

c - 如果有堆栈溢出,linux 会告诉我吗?