999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

C語言中指針的用法

2010-09-04 08:59:22武漢大學(xué)計(jì)算機(jī)學(xué)院李晶張彥芳
河南科技 2010年5期
關(guān)鍵詞:定義

武漢大學(xué)計(jì)算機(jī)學(xué)院 李晶 張彥芳

焦作師范高等專科學(xué)校計(jì)算機(jī)與信息工程系 郭艷麗

C語言中指針的用法

武漢大學(xué)計(jì)算機(jī)學(xué)院 李晶 張彥芳

焦作師范高等專科學(xué)校計(jì)算機(jī)與信息工程系 郭艷麗

一、指針的定義

在C語言中,指針是一種很重要的數(shù)據(jù)類型。程序運(yùn)行時,所有的數(shù)據(jù)都存放在計(jì)算機(jī)的內(nèi)存單元中,為了能夠正確的訪問這些內(nèi)存單元,在計(jì)算機(jī)內(nèi)部,所有的內(nèi)存單元都要統(tǒng)一的進(jìn)行“編號”,也就是說,所有的內(nèi)存單元都要有地址,并且具有唯一的內(nèi)存地址。一個變量在內(nèi)存中對應(yīng)一個單元地址,通常把這個地址稱為指針。

在C語言中,指針定義的一般形式為:類型說明符*指針名。

與其他程序設(shè)計(jì)語言有所不同,C語言允許使用變量的地址來訪問變量,這就意味著C語言中除了有存儲數(shù)、字符等內(nèi)容的普通變量外,還有一種特殊的變量。這種變量存儲的是另一個變量的地址,而不是通常意義下的數(shù)和字符,這種存儲地址的變量稱為指針變量。例如,當(dāng)變量a存儲了變量b的地址,就稱變量a指向了變量b。

二、指針的引用

1.指針的初始化。數(shù)據(jù)類型*指針名=初始地址值。例如:inti,*p=&i。在這需要注意幾個問題,首先指針變量在使用前需要先賦值,其次指針?biāo)傅淖兞恳呀?jīng)說明過,而且指針與所指變量類型應(yīng)該一致,最后還需注意不能對指針賦非地址值。

2.指針變量的引用。例子如下。

本程序首先定義指針變量p和q,并在定義的時候?qū)ψ兞縫初始化,使它指向變量m。賦值語句n=*p*2-3表示將p所指向的存儲單元中的值28乘以2再減去3,再將這一表達(dá)式的值賦給變量n。q=&c1表示指針變量q指向字符變量c1的存儲單元。賦值語句*q=c2+1表示將字符’g’送入q指向的存儲單元中。最后程序運(yùn)行的結(jié)果為:

在這里需要注意,當(dāng)*p出現(xiàn)在變量定義中的時候,表示定義了指針變量p;如果出現(xiàn)在表達(dá)式中則表示取p所指對象的內(nèi)容。

三、指針與數(shù)組

在C語言中,指針與數(shù)組有著十分密切的聯(lián)系。可以說程序中凡是用數(shù)組處理的算法都可以通過指針實(shí)現(xiàn),而且速度要比下標(biāo)法快得多。

1.指針與一維數(shù)組。假設(shè)有定義語句:inta[100],*p=a;將數(shù)組a的首地址賦予了指針變量p,這就使指針變量p指向了數(shù)組a的第一個分量a[0]。由于數(shù)組的存儲結(jié)構(gòu)是連續(xù)的,即數(shù)組元素在內(nèi)存中是連續(xù)存放的,因此a+i就是a[i]的存儲地址&a[i],*(a+i)表示取a+i地址中的內(nèi)容。當(dāng)指針變量p指向數(shù)組的首元素a[0]時,p+i就代表a[i]的地址,*(p+i)就代表a [i]。當(dāng)指針p指向一維數(shù)組中的某個分量時,執(zhí)行p++或p--就表示使指針p后移或前移一個存儲單元,其位移的字節(jié)數(shù)取決于基類型。

2.指針與二維數(shù)組。當(dāng)指向數(shù)組的指針處理二維數(shù)組時,有以下使用規(guī)則:

p是行指針,p+i、p++或p--均表示指針移動的單位是行;p只能指向二維數(shù)組中的行,而不能指向一行中的某個元素,但是可以通過p引用二維數(shù)組中的元素,例如引用a[i][j]可以用表達(dá)式*(*(p+i)+j)或*(p[i]+j)來表示。引用a[i][j]的地址可以用*(p+ i)+j或p[i]+j表示;指針名p與二維數(shù)組名a雖然都代表“行指針”,但指針名p為變量,所以它可以被賦值,而二維數(shù)組名a不能被賦值。

四、指針與函數(shù)

在C語言中,指針與函數(shù)之間存在著廣泛的聯(lián)系,其中最基本的聯(lián)系就是指針變量作為函數(shù)的參數(shù)。將函數(shù)的參數(shù)設(shè)置為指針變量可以實(shí)現(xiàn)通過參數(shù)將函數(shù)值帶出函數(shù)體的目的。

除此之外,我們還能夠在程序中使用函數(shù)指針。指向函數(shù)的指針,稱為“函數(shù)指針”。借助于該指針能夠使函數(shù)如同普通變量一樣的被傳遞和調(diào)用,用函數(shù)指針作為函數(shù)的參數(shù)能夠提高函數(shù)的通用性。

五、結(jié)束語

指針是C語言中最有風(fēng)險(xiǎn)、最難掌握的知識點(diǎn)。它內(nèi)容豐富、概念復(fù)雜、用法靈活,若使用不當(dāng)或誤用會造成不良后果,輕則得到錯誤的運(yùn)行結(jié)果,重則造成程序掛死乃至系統(tǒng)失控,因此建議使用者必須透徹理解概念,并多上機(jī)調(diào)試程序,從而弄清細(xì)節(jié),積累經(jīng)驗(yàn)。

猜你喜歡
定義
以愛之名,定義成長
活用定義巧解統(tǒng)計(jì)概率解答題
例談橢圓的定義及其應(yīng)用
題在書外 根在書中——圓錐曲線第三定義在教材和高考中的滲透
永遠(yuǎn)不要用“起點(diǎn)”定義自己
海峽姐妹(2020年9期)2021-01-04 01:35:44
嚴(yán)昊:不定義終點(diǎn) 一直在路上
華人時刊(2020年13期)2020-09-25 08:21:32
定義“風(fēng)格”
成功的定義
山東青年(2016年1期)2016-02-28 14:25:25
有壹手——重新定義快修連鎖
修辭學(xué)的重大定義
主站蜘蛛池模板: 日韩123欧美字幕| 夜夜爽免费视频| 国产色伊人| 久久久国产精品免费视频| 久久亚洲高清国产| 久久精品人妻中文系列| 在线亚洲精品自拍| 国产成人高清在线精品| 免费精品一区二区h| 草逼视频国产| 亚洲午夜天堂| 午夜激情婷婷| 2048国产精品原创综合在线| 色婷婷成人网| 色成人亚洲| 国产一区二区精品高清在线观看| 亚洲国语自产一区第二页| 免费Aⅴ片在线观看蜜芽Tⅴ | 久久国产拍爱| av无码久久精品| 中文字幕1区2区| 国产精品三区四区| 午夜免费视频网站| 久久精品这里只有精99品| 少妇被粗大的猛烈进出免费视频| 亚洲精品人成网线在线 | 国产凹凸视频在线观看| 91亚洲精选| 97se亚洲综合在线天天 | vvvv98国产成人综合青青| 国产亚洲精品资源在线26u| 亚洲成人一区二区| 2022国产91精品久久久久久| JIZZ亚洲国产| a级毛片毛片免费观看久潮| 国产成人高清亚洲一区久久| 国产小视频a在线观看| 久久99蜜桃精品久久久久小说| 国产精品第一区在线观看| 蜜臀AV在线播放| 国产欧美日韩一区二区视频在线| 草逼视频国产| 亚洲一区二区三区在线视频| 亚洲有无码中文网| 97影院午夜在线观看视频| 在线人成精品免费视频| 欧美高清三区| 免费中文字幕一级毛片| 在线视频精品一区| 欧美日韩精品综合在线一区| 在线观看无码a∨| 波多野结衣一区二区三区四区视频| 国内老司机精品视频在线播出| 特级精品毛片免费观看| 亚洲AV电影不卡在线观看| 欧美日韩激情在线| 最新国产高清在线| 青青热久免费精品视频6| 久草性视频| 国产簧片免费在线播放| 亚洲日韩Av中文字幕无码| 色九九视频| 日本一本在线视频| 国模粉嫩小泬视频在线观看| 国产精品思思热在线| 久热re国产手机在线观看| 午夜视频www| 国产香蕉在线视频| 91在线无码精品秘九色APP| 国产日韩欧美在线视频免费观看 | 高潮毛片无遮挡高清视频播放| 国产主播喷水| 欧美久久网| 九色在线视频导航91| 欧美日韩在线亚洲国产人| 国产对白刺激真实精品91| а∨天堂一区中文字幕| 色综合天天综合| 女同久久精品国产99国| 天天做天天爱夜夜爽毛片毛片| 久久永久视频| 亚洲天堂成人在线观看|