日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

5.1 指针与地址 (C)

發(fā)布時(shí)間:2025/7/14 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 5.1 指针与地址 (C) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

指針與地址

——《C程序設(shè)計(jì)語(yǔ)言(第2版-新版)》5.1

?

?? 一元運(yùn)算符&可用于取一個(gè)對(duì)象的地址,因此,下列語(yǔ)句:

?p = &c;

將把 c 的地址賦值給變了p,我們稱 p 為“指向”c的指針。地址運(yùn)算符&只能應(yīng)用于內(nèi)存中的對(duì)象,即變量與數(shù)組元素。它能作用于表達(dá)式常量register 類型的變量。

?

?? 一元運(yùn)算符*是間接尋址或間接引用運(yùn)算符。當(dāng)它作用與指針時(shí),將訪問指針?biāo)赶虻膶?duì)象。我們?cè)谶@里假定 x 與 y 是整數(shù),而 ip 是指向 int 類型的指針,下面的代碼說明了如何在程序中聲明指針以及如何使用運(yùn)算符&和*:


int?x?=?1,?y?=?2,?z[10];
int?*ip;???/*?ip?is?a?pointer?to?int?*/

ip?
=?&x;???/*?ip?now?points?to?x?*/
y?
=?*ip;???/*?y?is?now?1?*/
*ip?=?0;???/*?x?is?now?0?*/
ip?
=?&z[0]?/*?ip?now?points?to?z[0]?*/

?

??我們來看指針 ip 的聲明,如下所示:

??int *ip;

這樣聲明是為了便于記憶。該聲明語(yǔ)句表明表達(dá)式*ip的結(jié)果是int類型。這種聲明變量的語(yǔ)法與聲明該變量所在的表達(dá)式的語(yǔ)法類似。同樣的原因,對(duì)函數(shù)的聲明也可以采用這種方式。例如,聲明:

??double *dp, atof(char *);

表明,在表達(dá)式中,*dp和atof(s)的值都是double類型,且atof的參數(shù)是一個(gè)指向char類型的參數(shù)。?

?

??我們應(yīng)該注意,指針只能指向某種特定類型的對(duì)象,也就是說,每個(gè)指針都必須指向某種特定的數(shù)據(jù)類型。(一個(gè)例外情況是指向void類型的指針可以存放指向任何類型的指針,但它不能間接引用其自身。)。

?

??如果指針 ip 指向整形變量,那么在 x 可以出現(xiàn)的任何上下文中都可以使用 *ip,因此,語(yǔ)句

??*ip = *ip + 10;

將把*ip的值增加10。

?

??一元運(yùn)算符*和&的優(yōu)先級(jí)比算術(shù)運(yùn)算符的優(yōu)先級(jí)高,因此,賦值語(yǔ)句

??y = *ip + 1;

將把*ip指向的對(duì)象的值取出并加1,然后再將結(jié)果賦值給y,而下列賦值語(yǔ)句:

??*ip += 1;

則將 ip 指向的對(duì)象的值加1,它等同于

??++*ip; ?

??(*ip)++;

語(yǔ)句的執(zhí)行結(jié)果。 語(yǔ)句(*ip)++中的圓括號(hào)是必須的,否則,該表達(dá)式將對(duì) ip 進(jìn)行加1運(yùn)算,而不是對(duì) ip 指向的對(duì)象進(jìn)行加1運(yùn)算,這是因?yàn)?#xff0c;類似于*和++這樣的一元運(yùn)算符遵循從右至左的結(jié)合順序。

?

??最后說明一點(diǎn),由于指針也是變量,所以在程序中可以直接使用,而不必通過間接引用的方法使用。例如,如果 iq 是另一個(gè)指向整形的指針,那么語(yǔ)句

??iq = ip;

將把 ip 中的值拷貝到 iq 中,這樣,指針 iq 也將指向 ip 指向的對(duì)象。?

?

/*********************************

?* Last Edit By Old At 2009.12.26

?********************************/?

C程序設(shè)計(jì)語(yǔ)言_第2版新版.pdf??

總結(jié)

以上是生活随笔為你收集整理的5.1 指针与地址 (C)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。