看板 b99902HW 關於我們 聯絡資訊
我部分的code struct node{ char name[20]; struct node *prev; struct node *next; } ; typedef struct node NODE; typedef NODE *NODEPtr; void insert(NODEPtr *head, NODEPtr *tail, char where, int index, char name[20]){ NODEPtr newptr; newptr=malloc(sizeof(NODE));<-------這邊compile過不了= = 出現invalid coversion 'void*' to 'NODE*'的錯誤訊息 誰可以告訴我為什麼= =.... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.24.102.126
marrvosal:newptr=(NODE *)malloc(sizeof(NODE));這樣 12/25 18:20
q22554647:感謝!!!!,可是為什麼阿0.0..投影片都沒這樣用耶 12/25 18:23
pf5179:據神秘人士表示:似乎是跟用C與C++有關係唷 12/25 18:42
pf5179:其實不是很確定 有沒有真強者要解答QQ 12/25 18:43
radar735:據說那是cast (?) 12/25 19:05
orina1123:就是要把malloc()回傳的指標轉成NODE*型態呀 12/25 20:12
orina1123:不然malloc()自己傳回來的是void*型態的指標 12/25 20:13
ianlini:因為你副檔名是cpp的話只接受new和delete 12/25 21:52
ianlini:更正...是C++和C不一樣... 12/25 22:01
ianlini:不過如果用C++通常就是new就好了 12/25 22:02