#include <stdio.h>
#include <stdlib.h>
typedef int element;
struct cell {
element e;
struct cell *p;
};
typedef struct cell* CELL;
int main() {
CELL* p;
p = (CELL*) malloc (sizeof(struct cell));
p->e = 8; /* This ain't working */
*p.e = 8; /* This doesn't help anything either */
return 0;
}
我剛開始接觸malloc
,我剛剛作出了一個指針到新創建的CELL
,這是一個struct
。現在我試圖用一些價值來填補它,但是我受到了一個不友好的「對成員e的請求」的歡迎,而不是一個結構或聯盟。「我確實指向了一個包含e成員的struct
,或者至少,這就是我想我做到了。爲什麼會失敗?爲什麼我不能通過它的指針訪問這個結構體?