亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C語(yǔ)言中.與->的區(qū)別詳細(xì)解析

 更新時(shí)間:2023年06月19日 09:54:30   作者:One?day?  
這篇文章主要給大家介紹了關(guān)于C語(yǔ)言中.與->區(qū)別的相關(guān)資料,這雖然是個(gè)小問(wèn)題,但有時(shí)候很容易讓人迷惑,因?yàn)橛械臅r(shí)候用混淆了,程序編譯不通過(guò),需要的朋友可以參考下

->前是指針,而 . 前是結(jié)構(gòu)體變量

首先 a->b 的含義是 (*a).b ,所以他們是不同的,不過(guò)的確 -> 可以用 *. 實(shí)現(xiàn),不需要單獨(dú)一個(gè)運(yùn)算符。 嗯,我這是說(shuō)現(xiàn)代的標(biāo)準(zhǔn)化的 C 語(yǔ)義上來(lái)說(shuō), -> 可以用 *. 的組合實(shí)現(xiàn)。

早期的 C 有一段時(shí)間的語(yǔ)義和現(xiàn)代的 C 的語(yǔ)義不太一樣。

稍微有點(diǎn)匯編的基礎(chǔ)的同學(xué)可能知道,在機(jī)器碼和匯編的角度來(lái)看,不存在變量,不存在 struct 這種東西,只存在寄存器和一個(gè)叫做內(nèi)存的大數(shù)組。

結(jié)構(gòu)體變量用 . 來(lái)訪問(wèn)結(jié)構(gòu)體的成員如下:

#include<stdio.h>
#include <malloc.h>
struct stu{
	int  age;
	stu* next;
};
int main(){
	stu s1;
    s1.age =18;
	return 0;
}

指向結(jié)構(gòu)體的指針用->來(lái)訪問(wèn)其指向的結(jié)構(gòu)體的成員如:

#include<stdio.h>
#include <malloc.h>
struct stu{
	int  age;
	stu* next;
};
int main(){
	stu *phead = (stu*)malloc(sizeof(stu));//測(cè)試代碼 
    phead->age=18;
	phead->next = NULL;
	stu* p = phead;
	return 0;
}

簡(jiǎn)單點(diǎn)說(shuō)就是: 

1、A->a表示A是指向結(jié)構(gòu)體的指針 

2、A.a表示A是結(jié)構(gòu)體 

3、A->a等效于(*A).a

4、A.B則A為對(duì)象或者結(jié)構(gòu)體;

5、A->B則A為指針,->是成員提取,A->B是提取A中的成員B,A只能是指向類、結(jié)構(gòu)、聯(lián)合的指針;

6、(*a).b 等價(jià)于 a->b。"."一般情況下讀作"的”; “->”一般讀作"指向的結(jié)構(gòu)體的"。也就是說(shuō)在結(jié)構(gòu)中,運(yùn)算符->是運(yùn)算符*和運(yùn)算符.的結(jié)合

7、“->”是指向結(jié)構(gòu)體成員運(yùn)算符。“.”是斷點(diǎn)符號(hào),不屬于運(yùn)算符。

8、“->”所指向的是結(jié)構(gòu)體或?qū)ο蟮氖椎刂贰?ldquo;.”所指向的是結(jié)構(gòu)體或?qū)ο蟆?/strong>

9、“->”的用處是使用一個(gè)指向以便訪問(wèn)結(jié)構(gòu)體或?qū)ο笃鋬?nèi)成員。“.”的用處是使用一個(gè)指向以便訪問(wèn)結(jié)構(gòu)體或?qū)ο蟆?/strong>

此外,(*a).b 等價(jià)于 a->b。

"."一般情況下讀作"的”。

“->”一般讀作"指向的結(jié)構(gòu)體的"。

總結(jié)

到此這篇關(guān)于C語(yǔ)言中.與-&gt;區(qū)別的文章就介紹到這了,更多相關(guān)C語(yǔ)言.與-&gt;的區(qū)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于C++17實(shí)現(xiàn)的手寫線程池

    基于C++17實(shí)現(xiàn)的手寫線程池

    本文主要介紹了基于C++17實(shí)現(xiàn)的手寫線程池,自己實(shí)現(xiàn)了Any類,Semaphore類以及Result類的開發(fā),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • C語(yǔ)言鏈表實(shí)現(xiàn)工資管理系統(tǒng)

    C語(yǔ)言鏈表實(shí)現(xiàn)工資管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言鏈表實(shí)現(xiàn)工資管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 利用rapidjson實(shí)現(xiàn)解析嵌套的json的方法示例

    利用rapidjson實(shí)現(xiàn)解析嵌套的json的方法示例

    今天小編就為大家分享一篇關(guān)于利用rapidjson實(shí)現(xiàn)解析嵌套的json的方法示例,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-04-04
  • C語(yǔ)言詳細(xì)分析講解struct與union使用方法

    C語(yǔ)言詳細(xì)分析講解struct與union使用方法

    最近開始自學(xué)C語(yǔ)言,從最基礎(chǔ)部分的開始學(xué)起。今天看書的時(shí)候注意到了struct和union似乎很像,除了名字不同,看起來(lái)幾乎沒有區(qū)別。<BR>既然C中定義了struct和union兩個(gè)關(guān)鍵字,那么它們肯定是有區(qū)別的,在查了一些資料之后我來(lái)總結(jié)一下他們的使用
    2022-04-04
  • C程序讀取鍵盤碼的方法

    C程序讀取鍵盤碼的方法

    這篇文章主要介紹了C程序讀取鍵盤碼的方法,運(yùn)行時(shí)可通過(guò)鍵盤按鍵獲取其對(duì)應(yīng)的鍵盤碼,文章最后附帶了鍵盤碼與按鍵的對(duì)照表,需要的朋友可以參考下
    2014-09-09
  • Windows消息傳遞機(jī)制詳解

    Windows消息傳遞機(jī)制詳解

    這篇文章主要介紹了Windows消息傳遞機(jī)制,有助于讀者更好的理解windows編程的消息機(jī)制,需要的朋友可以參考下
    2014-07-07
  • 使用C/C++讀寫.mat文件的方法詳解

    使用C/C++讀寫.mat文件的方法詳解

    這篇文章主要為大家詳細(xì)介紹了使用C/C++讀寫.mat文件的方法,使用數(shù)據(jù)庫(kù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • C語(yǔ)言system函數(shù)使用方法詳解

    C語(yǔ)言system函數(shù)使用方法詳解

    本文詳細(xì)講解了C語(yǔ)言system函數(shù)的使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12
  • C++實(shí)現(xiàn)圖書館案例

    C++實(shí)現(xiàn)圖書館案例

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)圖書館案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • C語(yǔ)言代碼實(shí)現(xiàn)簡(jiǎn)易掃雷

    C語(yǔ)言代碼實(shí)現(xiàn)簡(jiǎn)易掃雷

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言代碼實(shí)現(xiàn)簡(jiǎn)易掃雷,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-01-01

最新評(píng)論