計算機二級指針,C語言——二級指針

二級指針的概念

首先任何值都有地址,一級指針的值雖然是地址,但這個地址做為一個值亦需要空間來存放,是空間就具有地址,這就是存放地址這一值的空間所具有的地址,二級指針就是為了獲取這個地址,

一級指針所關聯的是其值(一個地址)名下空間里的數據,這個數據可以是任意類型并做任意用途,但二級指針所關聯的數據只有一個類型一個用途,就是地址,指針就是兩個用途提供目標的讀取或改寫,那么二級指針就是為了提供對于內存地址的讀取或改寫

指針的表現形式是地址,核心是指向關系指針運算符“*”的作用是按照指向關系訪問所指向的對象.如果存在A指向B的指向關系,則A是B的地址,“*A”表示通過這個指向關系間接訪問B.如果B的值也是一個指針,它指向C,則B是C的地址,“*B”表示間接訪問C如果C是整型、實型或者結構體等類型的變量或者是存放這些類型的數據的數組元素,則B(即C的地址)是普通的指針,稱為一級指針,用于存放一級指針的變量稱為一級指針變量。

A(即B的地址)是指向指針的指針,稱為二級指針,用于存放二級指針的變量稱為二級指針變量.根據B的不同情況,二級指針又分為指向指針變量的指針和指向數組的指針.

二級指針的分類

指向指針變量的指針

在如上的A指向B、B指向C的指向關系中,如果A、B、C都是變量,即C是普通變量,B是一級指針變量,其中存放著C的地址,A是二級指針變量,其中存放著B的地址,則這3個變量分別在內存中占據各自的存儲單元,它們之間的相互關系下圖所示,相互之間的前后位置關系并不重要.此時,B是一級指針變量,B的值(即C的地址)是一級指針數據;A是二級指針變量,A的值(即B的地址)是二級指針數據.

指向數組的指針

在C語言中,數組與其它變量在使用上有很大的不同.無論是字符型、整型、實型變量,還是結構體類型或者指針類型的變量,語句中出現變量名都代表對該變量所在內存單元的訪問,變量名代表整個變量在內存中的存儲單元,可以向該變量賦值,也可以從中取出數據使用.但是定義一個數組之后,數組名并不代表整個數組所占據的內存單元,而是代表數組首元素的地址.

二級指針例子:

int

*q;?//定義一個一級指針變量,它指向一個普通變量(即它存的是一個變量的地址)

int

**p;?//定義一個二級指針變量,它指向一個指針變量(它存的也是一個變量地址,只不過是一個指針變量的地址)

int

s;

q =

&s;?//q中存的是整型變量s的地址,所以q是一級指針

p =

&q;?//p中存的是一級指針q的地址,所以p是二級指針

例子2:

# include

void f(int ** q);

int main(void)

{

int i =

9;

int * p =

&i;// int?*p;?p

= &i;

printf("%p\n", p);

f(&p);

printf("%p\n", p);

return 0;

}

void f(int ** q)

{

*q = (int

*)0xFFFFFFFF;// 這里是更改了p的值,與i無關,p不再指向i

}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/534047.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/534047.shtml
英文地址,請注明出處:http://en.pswp.cn/news/534047.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

華為 虛擬鍵盤_華為mate30 pro虛擬機械鍵盤特有體驗,雖是虛擬,但卻感受逼真...

華為Mate30 pro已于26日在國內正式發布了。此外,根據了解華為Mate30系列現在已經突破了5億的銷售額。看來,華為的這個下半年旗艦手機非常受歡迎啊。華為Mate30系列現在在國內已經發布了,其整體感官看上去與海外的沒有多大的區別。其實&#x…

python 如何快速判斷列表是否相同_Python-檢查列表中的所有元素是否相同

小編典典 通用方法: def checkEqual1(iterator): iterator iter(iterator) try: first next(iterator) except StopIteration: return True return all(first rest for rest in iterator) 單線: def checkEqual2(iterator): return len(set(iterator)…

計算機有什么著名基金經理排名,百萬年薪的基金經理,都是什么專業出身?!...

有人會說了“小嗶君你四不四撒!基金經理肯定是金融專業出身的咯?不然嘞?”但事實的真相是許多基金經理都并非科班出身這要從基金經理的晉升機制說起了!如下圖基金經理都是從研究員做起的!那么問題來了,如何…

遍歷children_589. N叉樹的前序遍歷

589. N叉樹的前序遍歷給定一個 N 叉樹,返回其節點值的前序遍歷。例如,給定一個 3叉樹 :返回其前序遍歷: [1,3,5,6,2,4]。說明: 遞歸法很簡單,你可以使用迭代法完成此題嗎?題解:既然是樹的遍歷,那么一共就是兩種思路&a…

計算機護理職稱考試報名時間2015,護理職稱考試怎么報名?

護理職稱考試報名流程:網上預報名-現場確認-報名繳費。護理職稱考試網上預報名及網上繳費均在中國衛生人才網,護理職稱考試報名現場確認則按屬地原則在單位或戶籍所在地的衛計局。護理職稱考試報名流程詳解一、網上預報名考生需在規定的時間內登錄中國衛…

怎么用python編程前二n-1項的等差數列的和_python 等差數列末項計算方式

等差數列末項計算 題目內容: 給出一個等差數列的前兩項a1,a2,求第n項是多少 可以使用以下語句實現非負整數n的輸入: nint(input()) 輸入格式: 三行,包含三個整數a1,a2,n 輸出格式: 一…

圖紙中bs是什么意思_園建施工圖中WL、BL、FL、TW、SL分別是什么意思

展開全部WL是水面標高來BL池底自標高FL地面標bai高TW墻頂標高SL 土面標高其他其他一些常du用的注解:PA種植區FF室內樓zhi地面標FG室外軟景完成dao面標高BC路沿底標高BS踏步底標高BR欄桿扶手底標高TR欄桿扶手頂標高SL結構板頂標高擴展資料本書圍繞園林工程建設主題&a…

計算機未顯示移動硬盤,電腦不顯示移動硬盤怎么辦_移動硬盤已連接不顯示解決教程...

最近有很多小伙伴咨詢小編,電腦不顯示移動硬盤怎么辦,怎么設置才能恢復呢?其實操作內容很簡單,嘗試刪除你的USB3.0可擴展主機控制器,再掃描硬件改動,今天就由小編來告訴你,移動硬盤已連接不顯示的解決方法。…

八個角最多可以把平面分成多少部分?_一個空間最多能被分成幾塊?

相信大家在小學奧數中都遇到這樣一個問題:4條直線最多能將平面分成幾部分?這個問題并不能難倒我們,但是如果將問題改為:4個平面最多能將空間分為幾部分?這下子我們可能就要放棄了。為了解決這個問題,今天我…

ios 不被遮擋 陰影_IOS開發之Bug--iOS7View被導航欄遮擋問題的解決

在實際開發中,遇到在UITextView的frame等于當前控制器的View的frame的情況下,然后運行的時候,發現控制器的Frame的高度y值會從導航條的位置64變化到0。導致UITextView的frame也跟著一起移動。這個問題本質其實就是iOS7View被導航欄遮擋問題&a…

破壞計算機信息系統功能罪,破壞計算機信息系統罪

破壞計算機信息系統罪2010年05月05日19:42法律咨詢 我要評論一、概念&nbsp&nbsp&nbsp&nbsp破壞計算機信息系統罪(刑法第286條),是指違反國家規定,對計算機信息系統功能或計算機信息系統中存儲、處理或者傳輸的數據和應用程序進行破壞…

python解析html xml最好的模塊_Python HTML/XML解析器BeautifulSoup(爬蟲解析器)

The Dormouses storyOnce upon a time there were three little sisters; and their names were Elsie, Lacie and Tillie; and they lived at the bottom of a well....

ffmpeg運行在服務器上,FFMPEG安裝在服務器上

我有一個在線服務器(共享主機方案)在Linux中,我不知道很多關于Linux的東西,我正在嘗試安裝ffmpeg。FFMPEG安裝在服務器上當安裝正在運行我得到這個消息,并停止安裝...Installation of MPlayer-1.0rc1.tar.bz2 ....... started% Total % Recei…

python csv pandas_Python Pandas——Read_csv詳解

目前最常用的數據保存格式可能就是CSV格式了,數據分析第一步就是獲取數據,怎樣讀取數據至關重要。 本文將以pandas read_csv方法為例,詳細介紹read_csv數據讀取方法。再數據讀取時進行數據預處理,這樣不僅可以加快讀取速度&#x…

python3兼容python2 print_python 字符串 r raw Python2 和 Python3 的區別及兼容技巧

前言最近 Python 之父 Guido van Rossum(龜爺)終于在 Python 官方郵件組落實了 Python 2.7 的終焉之日(EOL)。說的是 Python 2.7 的 EOL 日期最終確定為 2020 年 1 月 1 日,之后不會有任何更新,包括源碼的安全補丁。所以兼容Python3已經可以說非常必要了…

nginx搭建文件服務器腳本,基于docker搭建nginx文件服務器的方法步驟

1.在本機新建配置文件docker_nginx.confserver {listen 7070;server_name localhost;charset utf-8;location /files {#在docker內nginx的目錄alias /home/files;expires 1d;allow all;autoindex on;}2.啟動命令docker run --name nginx -d -p 7070:7070 -v D:\dev\nginx-1.13.…

python運行不了指令_python不是內部命令或外部命令,也不是可執行程序解決方法...

簡述 常見于新手初裝python,然后忘記勾選設置環境變量(PATH),或者沒有重啟,然后運行教程中的python命令時出現。 有兩個解決方法:1.設置環境變量,然后重啟。 2.新建命令。 如果你打算同時安裝多個python版本&#xff0…

快手通過標簽添加你什么意思_快快手粉絲數旁邊的關注是什么意思手通過關注頁添加是什么意思...

Aauto Speeter通過關注頁面添加的內容意味著,如果你已經在關注遇到了其他人,并且他們對你感興趣,他們將從這個關注頁面添加關注,并成為你的粉絲。事實上,得到關注和粉絲并不是特別困難。如果主要發表的內容有意思&…

ovation系統服務器安裝,Ovation系統介紹.ppt

Ovation系統介紹熱控調試關于OVATION系統的一點簡介;目錄;Ovation系統的結構及硬件;典型的OVATION系統結構;Primary;網線插拔后需重啟控制器,否則顯示橙色,failmode報警;每扇門都有風扇;;I/0 子系統結構 ; I/O 模件; I/O 卡指示 ;模件種類減少&#xff0…

東京戰紀服務器維護中,東京戰紀7月21維護公告 當前測試進度介紹

東京戰紀當前的測試進度已經有了很大的進步,接下來小編就跟大家一起看看測試期間對玩家給大家的報告吧。親愛的喰種和CCG搜查官們7月19日中午12:00,我們懷著緊張又忐忑的心情開啟了《東京戰紀》官網限量刪檔技術測試。大家對《東京喰種》IP的熱愛和對《東…