關於指標的問題,有興趣可以來看2分鐘

來源:互聯網
上載者:User

今天看到有人問道一段代碼,關於指標,覺得有點意思就發上我的注釋,大家分析下,可以練練基本功。

 

struct S
{
int i;
int *p;
};
main()
{
S s;
int *p=&s.i;    //p指向s的首地址
p[0]=4;        //處理s.i
p[1]=3;          //s.p =3
s.p=p;          //s.p指向s的首地址
s.p[1]=1;      //s.p[1]就是s裡的p,p=0x00000001
s.p[0]=2;        //操作0x00000001地址,代碼在此處掛掉
}

 

 

這裡雖然是在最後面才掛掉,但是野指標早在p[1]=3;就出現了,我們可以在這句後面加個s.p[0]=1; //如此類,往p指向的地址寫資料就可以,必然會在中間就掛掉。

 

具體的可跟蹤調試。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.