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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

c语言指针哪里难,为什么c语言指针那么难?

發(fā)布時(shí)間:2024/1/1 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言指针哪里难,为什么c语言指针那么难? 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

滿意答案

max60417

推薦于 2018.03.08

采納率:47%????等級(jí):12

已幫助:11226人

指針沒什么難的好吧,其實(shí)指針的難點(diǎn)在于應(yīng)用,可是有很多人在接觸指針的時(shí)候首先會(huì)對(duì)指針的理解上感到困難。

首先呢,在C語言里面,一個(gè)程序里面的變量在內(nèi)存里面是緊挨著的,而且每個(gè)變量的都有一個(gè)地址,所以這個(gè)地址也是緊挨著的,一般情況下,程序員使用十六進(jìn)制來表示指針的地址比較方便。

我們可以通過(&變量)來得到變量的地址,并且可以把這個(gè)地址賦值給一個(gè)變量,當(dāng)然也可以將這個(gè)地址傳遞給某一個(gè)子函數(shù)。

當(dāng)一個(gè)子函數(shù)得到這個(gè)地址的時(shí)候,可以直接用(“%f”,被賦值某個(gè)變量地址的變量)來輸出這個(gè)變量的地址,而且很厲害的一點(diǎn)就在于,我們可以通過(*被賦值某個(gè)變量地址的變量)來得到這個(gè)變量的值。

#include

int zizhihanshu(int *f){ //這里就是一個(gè)子函數(shù)

printf("%p \n",f); //這里我們可以輸出變量的地址

printf("%d \n",*f); //在變量前面加*號(hào),我們就可以隨時(shí)調(diào)用這個(gè)變量的值了,當(dāng)然,這個(gè)指針f的值是f所指向的那個(gè)變量的值,指針f本身就是一個(gè)變量,指針變量f的值是所指向的那個(gè)變量的地址,指針變量f本身也有一個(gè)地址。

}

int main(){

int d = 155;

int ad = 2;

printf("%p \n",&ad); //在主函數(shù)里面,我們可以通過&變量來輸出這個(gè)函數(shù)的地址

printf("%p \n",&d);

zizhihanshu(&d); //這里,我們直接給子函數(shù)返回一個(gè)地址

}

其次,可以用變量d和變量ad的地址用十六進(jìn)制計(jì)算機(jī)減一下,你會(huì)發(fā)現(xiàn),得到的結(jié)果是4或者是(-4),也就是說,一個(gè)整數(shù)變量在內(nèi)存里面所占的字節(jié)為4個(gè),同時(shí)也印證了,一個(gè)在代碼里面緊挨著的被賦值的變量,在內(nèi)存里面的地址也是緊挨著的。

&符,取地址

*符,將地址上的值反應(yīng)出來

C語言的指針其實(shí)是很容易理解的,關(guān)鍵在于之后在實(shí)際操作中怎么靈活的運(yùn)用指針。如果學(xué)到指針這個(gè)知識(shí)點(diǎn)的時(shí)候,進(jìn)展不是很好的話,可以在網(wǎng)絡(luò)上搜索一些關(guān)于內(nèi)存方面的知識(shí),這樣可以幫助理解。

10分享舉報(bào)

總結(jié)

以上是生活随笔為你收集整理的c语言指针哪里难,为什么c语言指针那么难?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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