指針常量與常量指針-創(chuàng)新互聯(lián)

指針常量:int* const ptr;不能改變存儲(chǔ)的地址,即不能改變指針的指向
常量指針:const int* ptr;不能通過(guò)該指針修改其指向的值,即如果用常量指針操作指向的數(shù)據(jù)時(shí),只能讀不能寫(xiě)
首先,指針的四個(gè)屬性:
1、自身的值(指向值的地址)
2、自身的類(lèi)型
3、指向的值
4、指向的類(lèi)型

讓客戶(hù)滿(mǎn)意是我們工作的目標(biāo),不斷超越客戶(hù)的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶(hù),將通過(guò)不懈努力成為客戶(hù)在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊(cè)、網(wǎng)站空間、營(yíng)銷(xiāo)軟件、網(wǎng)站建設(shè)、保亭黎族網(wǎng)站維護(hù)、網(wǎng)站推廣。

const修飾的無(wú)非就是1、3兩個(gè)屬性
記憶邏輯如下:(通過(guò)數(shù)組的特性來(lái)輔助記憶)
先記住指針常量,聯(lián)系數(shù)組名的值是一個(gè)地址,也就是地址常量,其實(shí)地址常量等價(jià)于指針常量
那么因?yàn)橹罃?shù)組名的值(自身值)是不能改變的,而數(shù)組內(nèi)的元素(指向的值)是可以改變的
綜上,記住指針常量(地址常量)不能改變自身值,而可以改變其指向值;
常量指針?lè)粗纯?,自身值可以改變,卻不能通過(guò)指針改變指向的值

通過(guò)以上知識(shí)我們就可以思考,C語(yǔ)言是如何實(shí)現(xiàn)數(shù)組這個(gè)數(shù)據(jù)類(lèi)型的了
數(shù)組名的底層無(wú)非就是指針常量,運(yùn)算符A[x]等價(jià)于*(A+x),
通過(guò)運(yùn)算符[]計(jì)算數(shù)組名這個(gè)指針常量與整數(shù)的的加減就可以引用數(shù)組內(nèi)的各個(gè)元素了
數(shù)組的聲明就是向棧內(nèi)申請(qǐng)分配大小對(duì)應(yīng)的內(nèi)存空間,類(lèi)似于使用malloc向堆申請(qǐng)內(nèi)存空間,都是分配連續(xù)的內(nèi)存空間

還有一件事
?const int a=10;
?int* p=&a;
?*a=20;
以上代碼本意是a的值不可修改,但是通過(guò)指針,卻確實(shí)修改了a的值,
所以在寫(xiě)代碼時(shí),如果要把一個(gè)變量的地址賦值給指針,若變量本身被const修飾,那么應(yīng)該把地址賦值給常量指針,避免通過(guò)指針修改了變量本身

其實(shí)以上都是為了加深常量指針與指針常量的理解,想要快速上手這兩個(gè)概念,一個(gè)口訣就搞定了
口訣:在前先讀,在前不變
解釋?zhuān)?br /> ?在前先讀:const在前就先讀常量,*在前就先讀指針;(區(qū)分const int* 和int* const的讀法)
?在前不變:const是把鎖,看const是在*p前面還是在p前面,
??? ? ?如果在*p前面表示鎖住了通過(guò)指針改變指向內(nèi)容這個(gè)操作
??? ? ? ?如果只是在p前面,表示鎖住了p本身這個(gè)指針變量的值,初始化后不可以發(fā)生p=&b這種操作(b是其他變量)

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

網(wǎng)站題目:指針常量與常量指針-創(chuàng)新互聯(lián)
本文URL:http://muchs.cn/article36/csgesg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷(xiāo)推廣、微信小程序、網(wǎng)站設(shè)計(jì)、商城網(wǎng)站網(wǎng)站營(yíng)銷(xiāo)、手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁(yè)設(shè)計(jì)公司