查看單個文章
  #1  
舊 2014-06-15, 06:22 PM
哈啦 的頭像
哈啦 哈啦 目前離線
論壇管理員
 
註冊日期: 2002-05-28
文章: 23,020
預設 指標的位址?

以下是書上的習題,要求變數x,以及指向數x的指標*p,以及指向指標*p的另一指標**mp的位址。

書上的解答是:
引用:
#include <stdio.h>

int main(void)
{
int *p,**mp,x;
p=&x;
mp=&p;
**mp=10;

printf("%p,%p,%p",&x,p,mp);

return 0;
}
結果程式跑出來後,其實&x和p的值是一樣的。
但我的疑問是,既然是三者的「位址」,不是應該寫成printf("%p,%p,%p",&x,&p,&mp);嗎?

thanks

剛操作時發現, printf("%p %p", p,&p) 這二者的值是一樣的? 所以對於指標變數,有沒有加&,印出來的%p都一樣,所以未必要加&嗎?
__________________
咖啡走路
微博


您是網站站長嗎?歡迎到站長俱樂部 一起討論吧。
按我看版規
code.club
回覆時引用此篇文章