女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]在 C 語言中,變量的地址往往都是編譯系統(tǒng)自動分配的,對我們用戶來說,我們是不知道某個變量的具體地址的。所以我們定義一個指針變量 p,把普通變量 a 的地址直接送給指針變量 p 就是 p = &a;這樣的寫法。對于指針變

在 C 語言中,變量的地址往往都是編譯系統(tǒng)自動分配的,對我們用戶來說,我們是不知道某個變量的具體地址的。所以我們定義一個指針變量 p,把普通變量 a 的地址直接送給指針變量 p 就是 p = &a;這樣的寫法。


對于指針變量 p 的定義和初始化,一般有兩種方式,這兩種方式,初學(xué)者很容易混淆,因此這個地方?jīng)]別的方法,就是死記硬背,記住即可。


方法 1:定義時直接進(jìn)行初始化賦值。

unsigned char a;

unsigned char *p = &a;


方法 2:定義后再進(jìn)行賦值。

unsigned char a;

unsigned char *p;

p = &a;


大家仔細(xì)看會看出來這兩種寫法的區(qū)別,它們都是正確的。我們在定義的指針變量前邊加了個*,這個*p 就代表了這個 p 是個指針變量,不是個普通的變量,它是專門用來存放變量地址的。此外,我們定義*p 的時候,用了 unsigned char 來定義,這里表示的是這個指針指向的變量類型是 unsigned char 型的。


指針變量似乎比較好理解,大家也能很容易就聽明白。但是為什么很多人弄不明白指針呢?因為在 C 語言中,有一些運(yùn)算和定義,他們是有區(qū)別的,很多同學(xué)就是沒弄明白它們的區(qū)別,指針就始終學(xué)不好。這里我要重點(diǎn)強(qiáng)調(diào)兩個區(qū)別,只要把這兩個區(qū)別弄明白了,起碼指針變量這部分就不是問題了。這兩個重點(diǎn)現(xiàn)在大家死記硬背,直接記住即可,靠理解有可能混淆概念。


第一個重要區(qū)別:指針變量 p 和普通變量 a 的區(qū)別。


我們定義一個變量 a,同時也可以給變量 a 賦值 a = 1,也可以賦值 a = 2。


我們定義一個指針變量 p,另外還定義了一個普通變量 a=1,普通變量 b=2,那么這個指針變量可以指向 a 的地址,也可以指向 b 的地址,可以寫成 p = &a,也可以寫成 p = &b,但就是不能寫成 p = 1 或者 p = 2 或者 p = a,這三種表達(dá)方式都是錯的。


因此這個地方,不要看到定義*p 的時候前邊有個 unsigned char 型,就錯誤的賦值 p=1,這個只是說明 p 指向的變量是這個 unsigned char 類型的,而 p 本身,是指針變量,不可以給它賦值普通的值或者變量,后邊我們會直接把指針變量稱之為指針,大家要注意一下這個小細(xì)節(jié)。


前邊這個區(qū)別似乎比較好理解,還有第二個重要區(qū)別,一定要記清楚。


第二個重要區(qū)別:定義指針變量*p 和取值運(yùn)算*p 的區(qū)別。


“*”這個符號,在我們的 C 語言有三個用法,第一個用法很簡單,乘法操作就是用這個符號,這里就不講了。


第二個用法,是定義指針變量的時候用的,比如 unsigned char *p,這個地方使用“*”代表的意思是 p 是一個指針變量,而非普通的變量。


還有第三種用法,就是取值運(yùn)算,和定義指針變量是完全兩碼事,比如:

unsigned char a = 1;

unsigned char b = 2;

unsigned char *p;

p = &a;

b = *p;

這樣兩步運(yùn)算完了之后,b 的值就成了 1 了。在這段代碼中,&a 表示取 a 這個變量的地址,把這個地址送給 p 之后,再用*p 運(yùn)算表示的是取指針變量 p 指向的地址的變量的值,又把這個值送給了 b,最終的結(jié)果相當(dāng)于 b=a。同樣是*p,放在定義的位置就是定義指針變量,放在執(zhí)行代碼中就是取值運(yùn)算。


這兩個重要區(qū)別,大家可以反復(fù)閱讀三四遍,把這兩個重要區(qū)別弄明白,指針的大門就順利的踏進(jìn)去一只腳了。至于詳細(xì)的用法,我們后邊用得多了就會慢慢熟悉起來了。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護(hù)是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機(jī)驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機(jī)驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉