【发布时间】:2020-12-08 02:46:38
【问题描述】:
我有:
char* mem = (char*) 0xB8000;
然后mem 被传递给一个函数。在函数内部,我想取回数字 0xB8000 并将其与其他一些整数进行比较。如何将mem 转换回原来的整数?
【问题讨论】:
-
mem是一个指针,其值为0xB8000。传递给函数时它不会去任何地方。 -
试试
printf("address: %p\n", mem); -
如果
sizeof(long long) >= sizeof(char *)(在我所知道的所有平台上都是如此),那么你可以这样做long long ll = (long long)mem; -
这能回答你的问题吗? Conversion of integer pointer to integer
标签: c pointers type-conversion