[問題] 有關指標傳遞問題
我的平台是Windows GCC
以下是我碰到的問題:(太久沒碰指標有點忘了)
假設head是一個已經建立好的linked list
struct node{
int data;
};
void main()
{
struct node *pointer=NULL;
function(head, pointer);
}
void function(struct node*pointer)
{
pointer = head;
}
確定在function中有成功將head的記憶體位址指定給ptr
但為什麼這樣子會傳不回去main???
好像說我在function中傳入的pointer記憶體位址變成是call by value(copy)
導致離開function就不見了???
但是pointer不是傳址呼叫嗎???
怎麼會這樣呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.170.227.7
推
01/11 11:23, , 1F
01/11 11:23, 1F
→
01/11 11:24, , 2F
01/11 11:24, 2F
→
01/11 11:25, , 3F
01/11 11:25, 3F
→
01/11 11:26, , 4F
01/11 11:26, 4F
推
01/11 11:28, , 5F
01/11 11:28, 5F
→
01/11 11:31, , 6F
01/11 11:31, 6F
→
01/11 11:43, , 7F
01/11 11:43, 7F
→
01/11 11:58, , 8F
01/11 11:58, 8F
→
01/11 11:58, , 9F
01/11 11:58, 9F
推
01/11 14:37, , 10F
01/11 14:37, 10F
→
01/11 14:38, , 11F
01/11 14:38, 11F