voidポインターを使用してデータを渡し、それを(pData *)型にキャストしようとしています。私は何が間違っているのですか?gccは私に
gcc test.cエラー:構造体または共用体ではないものでのメンバー'filename'の要求
typedef struct data {
char *filename;
int a;
} pData;
void mod_struct(void *data) {
printf("%s\n",(pData *)data->filename); //error on this line
}
void main() {
pData *data;
data = (pData *) malloc(sizeof(pData));
data->filename = (char *)malloc(100);
strcpy(data->filename,"testing testing");
data->a=1;
mod_struct((void *)&data);
}