物聯(lián)網/嵌入式工程師
重磅升級:新增硬件電路設計與實戰(zhàn),讓你軟硬通吃,同級PK無敵!行業(yè)風口、政策傾斜,新晉熱門高薪不內卷!0基礎一站式就業(yè)完整路徑,搶占先發(fā)優(yōu)勢!
我們之前的課程中介紹過一些指針有關的運算,例如 & 運算符可以獲取到變量的地址,而 * 運算符可以通過指針來找到指針指向的地方。
除此之外,指針還可以進行其他運算。
指針可以進行加減法的操作,我們都知道,指針實際上就是地址,那么如果我們有一個指針變量,它存放的地址是 1,那么如果我們對這個指針進行加 1 操作,就如同這樣:
p = p + 1;
那么是不是此時的 p 中存放的地址就變成 2 了呢?
答案是,不一定,那么會變成什么?我們要看指針的類型。
如果這個指針類型是 char * 類型,我們知道,char 的大小是 1 個字節(jié),那么加 1 的操作,指針地址就會增加 1。
而如果這個指針是 int * 類型,int 的大小是 4 個字節(jié),那么加 1 的操作,指針地址就會增加 4。
因此,指針加上一個 offset,那么實際上的指針偏移將會偏移 offset * 類型的大小。
同理,對于指針的減法,則是方向相反的偏移。
請驗證,完成請求
由于請求次數(shù)過多,請先驗證,完成再次請求
打開微信掃碼自動綁定
綁定后可得到
使用 Ctrl+D 可將課程添加到書簽
舉報