位置:首頁 > 軟件操作教程 > 編程開發(fā) > C語言 > 問題詳情

C語言 指針的算術(shù)運(yùn)算

提問人:劉團(tuán)圓發(fā)布時(shí)間:2020-12-01

指針雖然存放的是其他變量的地址,但也可以參與算術(shù)運(yùn)算。例如,指針可以加、減一個(gè)整數(shù),指針參與算術(shù)運(yùn)算的形式為:

    (1)p+n, p-n: 一個(gè)指針加一個(gè)整數(shù)時(shí),將指針從當(dāng)前位置向前移動(dòng)n個(gè)數(shù)據(jù)單位,而不是n個(gè)字節(jié)。如圖所示。如果一個(gè)指針減一個(gè)整數(shù)時(shí),從當(dāng)前位置回退移動(dòng)n個(gè)數(shù)據(jù)單位。例如:

    int a,*p=&a;

    假設(shè)變量a的地址為2000,表達(dá)式p+2將指向2000+2*sizeof(int),即2008地址單元處。

    (2)p++, p--:p++, p—操作實(shí)際上是p+n、p-n的特例,將指針向前(或向后)移動(dòng)一個(gè)數(shù)據(jù)單元。

    (3)p-q:兩個(gè)指針做減法,結(jié)果是兩個(gè)指針間相隔的元素的個(gè)數(shù),具體可參見指針與數(shù)組部分的介紹。

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部