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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

学习的境界

發布時間:2023/12/18 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 学习的境界 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

學習是有境界的,下面以C語言中的結構型為例簡單分析。

第一種境界:理解了。

結構型是自定義數據類型,與C語言中基本的數據類型如int的作用相同,用于定義變量。(變量是內存中存儲單元的標識,C語言中通過變量使用計算機的內存。)

結構型只是通過對已有數據類型的組合產生的新的類型。定義一個結構型的變量,實際上是定義了多個基本的變量,但這些變量屬于一個集體。

結構型可以做參數,也可以有結構型指針變量,但是因為結構型變量僅是一個代表,包括了多個變量,使用時(輸入輸出、參與多種運算時)必須具體到成員變量。

在定義結構型時可以包含指向自身的指針類型。構成鏈表的多個結構型變量在邏輯上就有了先后順序,并且可以用循環處理了。

第二種境界:比較了。

結構型與數組相似。

數組是大家比較熟悉的數據類型,也用于定義變量。

數組也是通過對已有數據類型的組合產生的新的類型。定義一個數組變量,實際上也是定義了多個變量,這些變量屬于數組這個集體。數組元素的類型相同,而結構型成員變量的類型可以任意。

數組做參數時會退化為指針類型。兩個數組變量之間不能相互賦值,而兩個結構型變量之間卻可以,即使結構型的成員變量有數組。數組在使用時也必須具體到數組元素。

結構型中可以有數組,數組的類型可以為結構型。

第三種境界:思考了。

數組變量之間為何不能相互賦值,而兩個結構型變量之間卻可以?

數組變量之間相互賦值在技術上沒有任何問題,因為兩個結構型變量之間就可以相互賦值。數組間不能相互賦值是在設計C語言時基于某種考量而故意為之的。問題變成了,C語言中為何這樣設計呢?

這樣做有什么好處呢?

效率高。數組做參數時退化為指針類型,原本要傳遞的大量數據現在只需傳遞幾個字節的數據就可以了,既高效又省空間。

另外,即使同樣為整型數組,但長度可能不同,要保證兩個數組相互賦值時不出錯也太累了。

數組與結構型本質上不同。

數組算作數據結構,所屬元素在邏輯上有次序關系,可以用循環依次處理各個元素。

結構型只是多個數據的包裝,所屬成員僅表示同屬一個集合,沒有次序關系。

?


總結

以上是生活随笔為你收集整理的学习的境界的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。