18禁网站免费,成年人黄色视频网站,熟妇高潮一区二区在线播放,国产精品高潮呻吟AV

學習啦 > 知識大全 > 知識百科 > 百科知識 > 在c語言中什么是指針

在c語言中什么是指針

時間: 歐東艷656 分享

在c語言中什么是指針

  為了說清楚什么是指針,必須弄清楚數(shù)據(jù)在內(nèi)存中是如何存儲的,又是如何讀取的。

  如果在程序中定義了一個變量,在編譯時就給這個變量分配內(nèi)存單元。系統(tǒng)根據(jù)程序中定義的變量類型,分配一定長度的空間。例如,C++編譯系統(tǒng)一般為整型變量分配4個字節(jié),為單精度浮點型變量分配4個字節(jié),為字符型變量分配1個字節(jié)。內(nèi)存區(qū)的每一個字節(jié)有一個編號,這圖6.1就是“地址”。

  圖6.1

  請務(wù)必弄清楚一個內(nèi)存單元的地址與內(nèi)存單元的內(nèi)容這兩個概念的區(qū)別。在程序中一般是通過變量名來對內(nèi)存單元進行存取操作的。其實程序經(jīng)過編譯以后已經(jīng)將變量名轉(zhuǎn)換為變量的地址,對變量值的存取都是通過地址進行的。這種按變量地址存取變量值的方式稱為直接存取方式,或直接訪問方式。

  還可以采用另一種稱為間接存取(間接訪問)的方式??梢栽诔绦蛑卸x這樣一種特殊的變量,它是專門用來存放地址的。

  圖6.2是直接訪問和間接訪問的示意圖。為了將數(shù)值3送到變量中,可以有兩種方法:

  直接將數(shù)3送到整型變量i所標識的單元中。見圖6.2(a)。

  將3送到指針變量i_pointer所指向的單元(這就是變量i所標識的單元)中。見圖6.2(b)。

  圖6.2

  所謂指向,就是通過地址來體現(xiàn)的。

  由于通過地址能找到所需的變量單元,因此可以說,地址指向該變量單元。因此將地址形象化地稱為“指針”,一個變量的地址稱為該變量的指針。

  如果有一個變量是專門用來存放另一變量地址(即指針)的,則它稱為指針變量。指針變量的值(即指針變量中存放的值)是地址(即指針)。

243509