二級指標和二維數組

來源:互聯網
上載者:User

下面看二維數組:int a[3][4];改寫下形式,也許,你就懂了 int (a[3])[4];a[0], a[1], a[2]    //他們都是int [4]的類型,都是4個int元素的首地址,你可以畫個圖a   // 是 int [3] [4]的類型,它是a[0] , a[1], a[2] ,3個元素的首地址,畫個圖;a + 1 就是&a[1] ,  a + 2 就是&a[2];*(a + 1 ) + 2 就是 a[1] + 2, 也就是 &a[1][2],  於是 *( *(a + 1) + 2)  就是a[1][2];現在看二維指標和數組指標,int * * pi;        // pi = a;這裡的賦值是不可以的,你懂的,類型不一樣,除非你強制轉換int  (*pj)[4];   // pj = a;  這裡賦值是可以的;數組指標假設int  4個位元組,指標也都是4個位元組,而且 pj = pi = 0 (地址十進位)pi + 1  //  地址是 4,位移了一個int*的元素,pj + 1  //  地址是 16,位移了4 * 4個int元素,

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.