我在想:
如果我有结构定义,例如,像这样:
struct Base {
int foo;
};
struct Derived {
int foo; // int foo is common for both definitions
char *bar;
};
Run Code Online (Sandbox Code Playgroud)
我可以这样做吗?
void foobar(void *ptr) {
((struct Base *)ptr)->foo = 1;
}
struct Derived s;
foobar(&s);
Run Code Online (Sandbox Code Playgroud)
例如,当它的类型实际上时,将void指针强制转换Base *为访问它?fooDerived *