c語言的小故事 「 「和」 「的區別

2021-10-24 10:55:33 字數 706 閱讀 8578

一般情況下用「.」,只需要du宣告乙個結構體。格式是,結構體型別名+結構體名。然後用結構體名加「.」加網域名稱就可以引用域 了。因為自動分配了結構體的記憶體。如同 int a;一樣。

而用「->」,則要宣告乙個結構體的指標,還要手動開闢乙個該結構體的記憶體,然後把返回的指標給宣告的結構體指標,才能用「->」正確引用。

否則記憶體中只分配了指標的記憶體,沒有分配結構體的記憶體,導致想要的結構體實際上是不存在。這時候用「->」引用自然出錯了,因為沒有結構體,自然沒有結構體的域了。

(*a).b 等價於 a->b。"."一般情況下讀作"的」。

「->」一般讀作"指向的結構體的"。

在「結構」一單元**現的->運算子成為「右箭頭選擇」,在使用中可以用new_node->value = 10;來代替(*new_code).value = 10;

也就是說在結構中,運算子->是運算子*和運算子.的結合,在上述語句中,他先對new_node間接定址以定位所指向的結構,然後再選擇結構的成員value。

結構體變數用 . 運算子來訪問結構體的成員

struct a;

a object;

object.a = 1;

指向結構體的指標用->來訪問其指向的結構體的成員

a *point = malloc(sizeof(struct a));

point->a = 1;

C和C 語言的區別

c和c 語言的區別 這是我複習c和c 語言時做的幾點總結,不妥之處,敬請大神指正。1 c是面向結構化的設計語言,c 在c基礎上增加了物件導向的支援和物件導向的程式設計方法,支援封裝 繼承 多型。c 可定義類,c中沒有類的概念。2 c的結構僅可包含資料成員,c 擴充套件了結構,可以包含函式成員,也可以...

C 和c語言的區別

在大家眼中c 與c語言很像,但兩個有本質的區別,c語言是面向過程的,而c 是物件導向的,下面就給大家梳理梳理。1 c語言有標準的函式庫,它們鬆散的,只是把功能相同的函式放在乙個標頭檔案中 而c 對於大多數的函式都是有整合的很緊密,特別是c語言中沒有的c 中的api是對window系統的大多數api有...

C語言的歷史故事

c語言早期發展 1969 1973年在美國 電報公司 at t 貝爾實驗室開始了c語言的最初研發。根據c語言的發明者丹尼斯 里奇 dennis ritchie 說,c 語言最重要的研發時期是在1972年。說明 丹尼斯 里奇 dennis ritchie c語言之父,unix之父。1978年與布萊恩 ...