C語言 一級(jí)指針與二級(jí)指針詳細(xì)介紹
指針的概念
指針就是地址, 利用這個(gè)地址可以找到指定的數(shù)據(jù)
指針就是地址, 那么在使用的時(shí)候, 常常會(huì)簡單的說 指針變量為指針
指針變量就是存儲(chǔ)地址的變量
int *p1;// 申請(qǐng)了一個(gè)變量, 即在內(nèi)存中開辟了一塊內(nèi)存, 存儲(chǔ)數(shù)據(jù)
// 開辟了 8 個(gè)字節(jié), 在 Mac 下 指針都占 8 個(gè)字節(jié)
使用指針, 實(shí)際上應(yīng)該說成使用指針變量
1> 算術(shù)運(yùn)算
+1 移動(dòng)幾個(gè)字節(jié)?
看類型: int *, long *, char *
2> 獲得地址表示的數(shù)據(jù)
指針里面存儲(chǔ)的是地址, 就可以將該地址中的數(shù)據(jù)取出來
尋址運(yùn)算符 *&p1 -> p1
3> 修改改地址中的數(shù)據(jù)
4> 作為函數(shù)參數(shù)的使用(*****)
如果傳遞的不是指針變量, 而是普通的變量, 就是值傳遞: 函數(shù)內(nèi)與函數(shù)外是兩個(gè)不同的變量, 只是存儲(chǔ)的數(shù)據(jù)相同(好比發(fā)送文件)
如果傳遞的是指針變量, 即傳遞的是地址, 那么就是引用傳遞: 函數(shù)內(nèi)外可以看成同一個(gè)變量(好比發(fā)送鏈接)
由于函數(shù)參數(shù)使用指針后, 可以實(shí)現(xiàn)函數(shù)內(nèi)變量修改后, 影響到函數(shù)外的變量. 因此常常將函數(shù)參數(shù)設(shè)置為指針類型的變量
實(shí)現(xiàn)利用參數(shù)返回多個(gè)數(shù)據(jù)的函數(shù)
scanf("%d", &num);
二級(jí)指針
二級(jí)指針就是指向一級(jí)指針的指針(n 級(jí)指針就是 指向 n-1 級(jí)指針的 指針)
指針的本質(zhì)就是地址, 那么幾級(jí)指針也只是一個(gè)地址, 唯一不同的就是尋址的結(jié)果(*p)
1>在開發(fā)中使用 二級(jí)指針的地方就是利用函數(shù)或方法返回一個(gè) 一級(jí)指針數(shù)據(jù)
2> 如果需要用函數(shù)參數(shù)返回?cái)?shù)據(jù), 如果返回的是一般的數(shù)據(jù), 傳遞一級(jí)指針
3> 如果返回的是一個(gè)一級(jí)指針, 那么參數(shù)應(yīng)該是一個(gè)二級(jí)指針
4> 如果返回的是一個(gè) n 級(jí)指針, 那么參數(shù)應(yīng)該是一個(gè) n+1 級(jí)指針
下圖中*p1指的是num的值,*p2指的是p1內(nèi)存的地址,**p2也指的是num的值......
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
c語言標(biāo)準(zhǔn)庫中字符轉(zhuǎn)換函數(shù)和數(shù)字轉(zhuǎn)換函數(shù)
這篇文章主要介紹了c標(biāo)準(zhǔn)庫中字符轉(zhuǎn)換函數(shù)和數(shù)字轉(zhuǎn)換函數(shù),需要的朋友可以參考下2014-04-04利用C語言實(shí)現(xiàn)頁面置換算法的詳細(xì)過程
一個(gè)好的頁面置換算法,應(yīng)具有較低的頁面更換頻率,從理論上講,應(yīng)該保留最近重復(fù)訪問的頁面,將以后都不再訪問或者很長時(shí)間內(nèi)不再訪問的頁面調(diào)出,下面這篇文章主要給大家介紹了關(guān)于利用C語言實(shí)現(xiàn)頁面置換算法的相關(guān)資料,需要的朋友可以參考下2022-11-11緩存處理函數(shù)storageKeySuffix操作示例解析
這篇文章主要介紹了淺析緩存處理函數(shù)storageKeySuffix操作示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08一文詳解C語言中的switch語句和while循環(huán)
這篇文章主要給大家詳細(xì)介紹了C語言中的switch語句和while循環(huán),文中通過代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2023-12-12C++通過自定義函數(shù)找出一個(gè)整數(shù)數(shù)組中第二大數(shù)的方法
這篇文章主要介紹了C++通過自定義函數(shù)找出一個(gè)整數(shù)數(shù)組中第二大數(shù)的方法,涉及C++針對(duì)數(shù)組的遍歷操作相關(guān)技巧,需要的朋友可以參考下2015-06-06