首页 文章

我怎么知道哪个类型(int,double,float等...)当前持有void指针? [重复]

提问于
浏览
0

这个问题在这里已有答案:

我怎么知道哪个类型(int,double,float等...)当前持有void指针?假设

void * p;

int x = 10;

P =&X;

的printf( “%S”,type_of_void_pointer(P));

双d = 1.5;

P =&d;

的printf( “%S”,type_of_void_pointer(P));

第一个printf应该打印“int”而第二个应该打印“double”有没有办法写出type_of_void指针函数?

1 回答

  • 1

    无论如何你无法从内容中知道 type . 从 void* 本身来看,我们无法知道这一点 . 这是所有地址 . 即使您查看内容,也无法知道它的类型 .

    你所知道的就是地址,就是这样 . 您甚至可以将其转换为不同的类型并以不同的方式解释它 .

相关问题