本篇內(nèi)容主要講解“C語言中*p+1和*(p+1)之間有什么不同”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“C語言中*p+1和*(p+1)之間有什么不同”吧!
未央ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!
區(qū)別是:1、*p表示此指針指向的內(nèi)存地址中存放的內(nèi)容,p表示一個(gè)指針變量的名字;2、*p一般是一個(gè)和指針類型一致的變量或者常量,p輸出的是一個(gè)16進(jìn)制數(shù);3、*p是讓程序去那個(gè)地址取出數(shù)據(jù),p存放的是地址。
本教程操作環(huán)境:windows7系統(tǒng)、C++17版本、Dell G3電腦。
C語言中,*p 和p都常用在指針當(dāng)中表示一個(gè)指針變量,*p 和p的區(qū)別:
1、表示的含義不同
*p表示此指針指向的內(nèi)存地址中存放的內(nèi)容。
p表示一個(gè)指針變量的名字,指此指針變量所指向的內(nèi)存地址。
2、輸出的格式不同
*p一般是一個(gè)和指針類型一致的變量或者常量。
p輸出的是一個(gè)16進(jìn)制數(shù), 輸出一個(gè)指針的地址。
3、功能不同
*p是讓程序去那個(gè)地址取出數(shù)據(jù)。
p存放的是地址。
例子:
1、
int a[5]={1,2,3,4,5}; int *p=a;//這是在定義指針變量p的同時(shí)就直接給它初始化,即把數(shù)組a的首地址賦給它。
2、
int a[5]={1,2,3,4,5}; int *p;//聲明指針變量p p = a;
擴(kuò)展資料
(*p)操作是這樣一種運(yùn)算,返回p 的值作為地址的那個(gè)空間的取值。(&p)則是這樣一種運(yùn)算,返回當(dāng)時(shí)聲明p 時(shí)開辟的地址??梢杂觅x值語句對內(nèi)存地址賦值。
例:
int *p; p=2003H; *p=3000H
結(jié)果:
**p=*(*(p))=*(*(2003H))=*(3000H)=3000H。 &&p=&(&(p))=&(3001H),此時(shí)出錯(cuò)了,3001H 是個(gè)常數(shù)無法存放地址。 *&p=*(&(p))=*(3001H)=2003H,也就是*&p=p。
到此,相信大家對“C語言中*p+1和*(p+1)之間有什么不同”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!