#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct test {
void *ptr;
char str[300];
};
struct test2 {
int i;
char astr[200];
};
int main(void)
{
struct test *p;
p
= malloc(sizeof(struct test
)); p
->ptr
= malloc(sizeof(struct test2
)); strcpy(((struct test2
*)(p
->ptr
))->astr
, "hello world"); printf("%s\n", ((struct test2
*)(p
->ptr
))->astr
); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHN0cmluZy5oPgoKc3RydWN0IHRlc3QgewogICAgICAgIHZvaWQgKnB0cjsKICAgICAgICBjaGFyIHN0clszMDBdOwp9OwpzdHJ1Y3QgdGVzdDIgewogICAgICAgIGludCBpOwogICAgICAgIGNoYXIgYXN0clsyMDBdOwp9OwoKaW50IG1haW4odm9pZCkKewogICAgICAgIHN0cnVjdCB0ZXN0ICpwOwogICAgICAgIHAgPSBtYWxsb2Moc2l6ZW9mKHN0cnVjdCB0ZXN0KSk7CiAgICAgICAgcC0+cHRyID0gbWFsbG9jKHNpemVvZihzdHJ1Y3QgdGVzdDIpKTsKCQlzdHJjcHkoKChzdHJ1Y3QgdGVzdDIgKikocC0+cHRyKSktPmFzdHIsICJoZWxsbyB3b3JsZCIpOwoJCXByaW50ZigiJXNcbiIsICgoc3RydWN0IHRlc3QyICopKHAtPnB0cikpLT5hc3RyKTsKCQlyZXR1cm4gMDsKfQ==