1
我該如何類型轉換一個void指針結構數組?這裏是我的代碼:類型轉換void指針結構類型
typedef struct{
int a;
double b;
} myStruct;
void Func1(void * Array1);
int main(){
myStruct S1[5];
S1[0].a = 1;
S1[0].b = 2.3;
S1[1].a = 2;
S1[1].b = 3.4;
Func1(S1);
return 0;
}
void Func1(void * Array1){
myStruct S2[5];
S2[0] = (myStruct *)Array1[0];
}
我得到的編譯錯誤Func1
分配S2[0]
。我如何正確地輸入Array1
?
主要問題,爲什麼你在第一時間宣佈FUNC1爲void *?你會得到什麼錯誤?試圖((myStruct *)Array1)[0]? – eckes 2014-12-04 00:13:57
指針不是數組,也沒有一個是元素類型。而是使用 – Deduplicator 2014-12-04 00:15:35