精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>源碼下載>通訊/手機編程>

解析ios系統關于數組和指針

大?。?/span>0.2 MB 人氣: 2017-09-26 需要積分:11
指針是如何加減運算:
  - int *p 的解釋:將來的指針是指向int類型
  指針p + 1 說明內存地址會加上4個字節(因為是int占4個字節)
  如果是 double *p 指針p + 1內存地址會加上8個字節(因為是double占8個字節)
  - 通過上述解釋我們得出一個公式:
  指針p + n = p當前的地址值 + n *指向類型所占用的字節數
  指針p - n = p當前的地址值 - n * 指向類型所占用的字節數
  數組與指針:
  int arrayName[4] = {10, 20, 30, 40};
  上面的數組占16個字節(原因:每個int類型占4個字節,這個數組有4個int類型,所以占16個字節)
  arrayName就是數組名
  數組名 :表示數組首元素的地址,相當于一個指向數組首元素的指針
  相信你已經有點蒙圈了,我們在進一步解釋一下:
  NSLog(@“%p %p”, arrayName, arrayName + 1);
  NSLog(@“%p %p”, &arrayName, &arrayName + 1);
  解析ios系統關于數組和指針
  1. arrayName 與 &arrayName
  arrayName 是數組名,所以打印出來是數組首元素的地址
  &arrayName 含義就是數組的地址(等價于指向arrayName數組的指針),因為沒增加1,所以數組的地址就是數組首元素的地址所以 arrayName 《-》&arrayName 打印出的地址是一樣的
  2.(arrayName + 1) 與 (&arrayName + 1)
 ?。╝rrayName + 1)通過上述解釋我們知道(arrayName + 1)指針是指向int類型,所以內存地址會加上4個字節
  (&arrayName + 1)我們知道&arrayName是數組的地址(等價于指向arrayName數組的指針) 因為增加1,這個數組總共占16個字節,所以內存地址會加上16個字節

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?