C語言中.與->的用法介紹
(一)基礎(chǔ)
結(jié)構(gòu)體用點(diǎn),結(jié)構(gòu)體指針用箭頭。
a->b
的含義是 (*a).b
。 現(xiàn)代的標(biāo)準(zhǔn)化的 C 語義上來說, ->
可以用 *
和 .
的組合實(shí)現(xiàn)。
簡單的說,就是一個(gè)快捷方式,一個(gè)語法糖。
(二)例子
在機(jī)器碼和匯編的角度來看,不存在變量,不存在 struct 這種東西,只存在寄存器和一個(gè)叫做內(nèi)存的大數(shù)組。
結(jié)構(gòu)體變量用 . 來訪問結(jié)構(gòu)體的成員如下:
#include<stdio.h> #include <malloc.h> struct stu{ int age; stu* next; }; int main(){ stu s1; <strong>s1.age </strong><strong>=18; </strong>return 0; }
指向結(jié)構(gòu)體的指針用->來訪問其指向的結(jié)構(gòu)體的成員如:
#include<stdio.h> #include <malloc.h> struct stu{ int age; stu* next; }; int main(){ <strong>stu </strong><strong>*</strong>phead = (stu*)malloc(sizeof(stu));//測試代碼 <strong>phead->age=18</strong><strong>;</strong> phead->next = NULL; stu* p = phead; return 0; }
(三)總結(jié)
- A->a表示A是指向結(jié)構(gòu)體的指針
- A.a表示A是結(jié)構(gòu)體
- A->a等效于(*A).a
- A.B則A為對(duì)象或者結(jié)構(gòu)體;
- A->B則A為指針,->是成員提取,A->B是提取A中的成員B,A只能是指向類、結(jié)構(gòu)、聯(lián)合的指針;
- (*a).b 等價(jià)于 a->b。"."一般情況下讀作"的”; “->”一般讀作"指向的結(jié)構(gòu)體的"。也就是說在結(jié)構(gòu)中,運(yùn)算符->是運(yùn)算符*和運(yùn)算符.的結(jié)合
- “->”是指向結(jié)構(gòu)體成員運(yùn)算符。“.”是斷點(diǎn)符號(hào),不屬于運(yùn)算符。
- “->”所指向的是結(jié)構(gòu)體或?qū)ο蟮氖椎刂贰?ldquo;.”所指向的是結(jié)構(gòu)體或?qū)ο蟆?/li>
- “->”的用處是使用一個(gè)指向以便訪問結(jié)構(gòu)體或?qū)ο笃鋬?nèi)成員。“.”的用處是使用一個(gè)指向以便訪問結(jié)構(gòu)體或?qū)ο蟆?/li>
到此這篇關(guān)于C語言中.與->的區(qū)別 的文章就介紹到這了,更多相關(guān)C語言中.與->的區(qū)別 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
利用C++的基本算法實(shí)現(xiàn)十個(gè)數(shù)排序
以下是對(duì)利用C++的基本算法實(shí)現(xiàn)十個(gè)數(shù)排序的代碼進(jìn)行了介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助2013-10-10C++11 shared_ptr 與 make_shared源碼剖析詳解
這篇文章主要介紹了C++11 shared_ptr 與 make_shared的源碼剖析,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09c++動(dòng)態(tài)庫調(diào)用的實(shí)現(xiàn)
本文主要介紹了c++動(dòng)態(tài)庫調(diào)用的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07C++/JAVA/C#子類調(diào)用父類函數(shù)情況總結(jié)
今天小編就為大家分享一篇關(guān)于C++/JAVA/C#子類調(diào)用父類函數(shù)情況總結(jié),小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03