在C中存储一个类型

可以将类型名称存储为C变量吗?例如,像这样:

type my_type = int; // or string, or Foo, or any other type
void* data = ...;
my_type* a = (my_type*) data;

我知道99.9%的时间有一个更好的方式来做你想要的,而不是使用cast void void指针,但我很好奇,如果C允许这种事情。

不,这是不可能的C。

RTTI typeid操作符允许您在运行时获取有关类型的一些信息:您可以获取类型的名称,并检查它是否等于另一种类型,但这是关于它的。

http://stackoverflow.com/questions/2562176/storing-a-type-in-c

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:在C中存储一个类型