真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

c語言函數(shù)變量指針其含義 c語言指針變量作為函數(shù)參數(shù)實(shí)現(xiàn)兩變量交換值

C語言中的指針是什么意思?

其實(shí)與其你在這里問,還不如看一看c語言教科書,上面寫的都很詳細(xì)

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供新都網(wǎng)站建設(shè)、新都做網(wǎng)站、新都網(wǎng)站設(shè)計、新都網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、新都企業(yè)網(wǎng)站模板建站服務(wù),十年新都做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

以下是譚浩強(qiáng)版的

在計算機(jī)中,所有的數(shù)據(jù)都是存放在存儲器中的。一般把存儲器中的一個字節(jié)稱為一個內(nèi)存單元,不同的數(shù)據(jù)類型所占用的內(nèi)存單元數(shù)不等,如整型量占2個單元,字符量占1個單元等,在前面已有詳細(xì)的介紹。為了正確地訪問這些內(nèi)存單元,必須為每個內(nèi)存單元編上號。根據(jù)一個內(nèi)存單元的編號即可準(zhǔn)確地找到該內(nèi)存單元。內(nèi)存單元的編號也叫做地址。

既然根據(jù)內(nèi)存單元的編號或地址就可以找到所需的內(nèi)存單元,所以通常也把這個地址稱為指針。

內(nèi)存單元的指針和內(nèi)存單元的內(nèi)容是兩個不同的概念。

可以用一個通俗的例子來說明它們之間的關(guān)系。我們到銀行去存取款時,

銀行工作人員將根據(jù)我們的帳號去找我們的存款單,

找到之后在存單上寫入存款、取款的金額。在這里,帳號就是存單的指針,

存款數(shù)是存單的內(nèi)容。對于一個內(nèi)存單元來說,單元的地址即為指針,其中存放的數(shù)據(jù)才是該單元的內(nèi)容。在C語言中,允許用一個變量來存放指針,這種變量稱為指針變量。因此,一個指針變量的值就是某個內(nèi)存單元的地址或稱為某內(nèi)存單元的指針。

嚴(yán)格地說,一個指針是一個地址,是一個常量。而一個指針變量卻可以被賦予不同的指針值,是變量。但常把指針變量簡稱為指針。為了避免混淆,我們中約定:“指針”是指地址,是常量,“指針變量”是指取值為地址的變量。定義指針的目的是為了通過指針去訪問內(nèi)存單元。

既然指針變量的值是一個地址,那么這個地址不僅可以是變量的地址,也可以是其它數(shù)據(jù)結(jié)構(gòu)的地址。在一個指針變量中存放一個數(shù)組或一個函數(shù)的首地址有何意義呢?

因?yàn)閿?shù)組或函數(shù)都是連續(xù)存放的。通過訪問指針變量取得了數(shù)組或函數(shù)的首地址,也就找到了該數(shù)組或函數(shù)。這樣一來,凡是出現(xiàn)數(shù)組,函數(shù)的地方都可以用一個指針變量來表示,只要該指針變量中賦予數(shù)組或函數(shù)的首地址即可。這樣做,將會使程序的概念十分清楚,程序本身也精練,高效。在C語言中,一種數(shù)據(jù)類型或數(shù)據(jù)結(jié)構(gòu)往往都占有一組連續(xù)的內(nèi)存單元。

用“地址”這個概念并不能很好地描述一種數(shù)據(jù)類型或數(shù)據(jù)結(jié)構(gòu),而“指針”雖然實(shí)際上也是一個地址,但它卻是一個數(shù)據(jù)結(jié)構(gòu)的首地址,它是“指向”一個數(shù)據(jù)結(jié)構(gòu)的,因而概念更為清楚,表示更為明確。

這也是引入“指針”概念的一個重要原因。

c語言中變量的指針,其含義是指變量的什么?

指針變量是有加減運(yùn)算的,但是要注意以下幾點(diǎn):

1.指針變量中存放的是地址值,也就是一個數(shù)字地址,例如某指針變量中的值是0x20000000,表示表示此指針變量存放的是內(nèi)存中位于0x20000000地方的內(nèi)存地址。指針變量可以加減,但是只能與整型數(shù)據(jù)加減,此時加減的含義并不是其地址值進(jìn)行了加減,也就是說如果指針變量p的值是0x20000000,那么p=p+2;的值并不是0x20000002,并不是地址值的簡單相加,那么地址值加減多少是與指針指向的數(shù)據(jù)類型相關(guān)聯(lián)的,如果在32位的操作系統(tǒng)上,p是指向整型數(shù)據(jù)的指針變量,那么p=p+2之后,p的地址值變成0x20000008,也就說實(shí)際上地址值加了多少呢:sizeof(int)*2這么多。說明白點(diǎn),我們加減的數(shù)字是以指針指向的數(shù)據(jù)類型為量度的,p+2表示p在內(nèi)存中前移兩個int的距離,如果p不是int類型,而是其他類型道理也是一樣。同樣指針與整型數(shù)據(jù)相減也是同樣的道理。

2.指針之間可以相減,但不可以相加:兩個同一類型的指針變量是可以相減的,他們的意義表示兩個指針指向的內(nèi)存位置之間相隔多少個元素(注意是元素,并不是字節(jié)數(shù)),例如對于int類型的指針p和p1.p1-p的意義表示他們之間相隔多少個int類型的元素。同樣對于其他類型的指針變量之間相減的意義也是一樣。指針變量的自加和自減實(shí)際上是與整數(shù)1的加減運(yùn)算。

3.指針之間可以比較大小。但是同樣也限于兩個相同類型的指針變量,不同類型的指針變量之間比較大小沒有任何意義。指針之間的大小比較的意義,表示在內(nèi)存中他們指向的位置的高低關(guān)系。

C語言中指針是什么意思?

1.指針就是1個變量,他也是一個存放內(nèi)容的內(nèi)存空間。

2.指針存放的內(nèi)容是另一個內(nèi)存空間的起始地址。不同于一般變量存放的就是變量值。

3.取值操作符*對于指針的作用是取得指針變量存放的內(nèi)存地址里面的值,不加*取出的是指針變量存放的值(就是一個內(nèi)存地址)

上面3步,step by step 你就理解了.


網(wǎng)站欄目:c語言函數(shù)變量指針其含義 c語言指針變量作為函數(shù)參數(shù)實(shí)現(xiàn)兩變量交換值
網(wǎng)頁鏈接:http://weahome.cn/article/doehsho.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部