看板 C_and_CPP 關於我們 聯絡資訊
所以說 當指標傳進函式 它只是複製一個變數名稱不同 但指到的變數型態一樣的指標? void test(int*); int *p; int main(int argc, char *argv[]) { p=(int*)malloc(sizeof(int)); *p=8; printf("%d and p's address: %d\n",*p,&p); test(p); printf("%d and p's address: %d\n",*p,&p); system("PAUSE"); return 0; } void test (int* i) { int *s= (int*)malloc(sizeof(int)); *s=100; i=s; } 也就是說我p在裡面(i)就算所指的位址跟s一樣 但已經跟p無關了 對嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.169.176.162 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1449143647.A.A78.html
james1022jk: 其實就是call by value的問題 12/03 20:07
anoymouse: 謝謝! 真是盲點 12/03 22:08
ilikekotomi: 置底有提到這個 看那邊有圖示還蠻好懂的 12/04 20:07