C語言中的結構體,結構體數組


 

C語言中的結構體是一個小難點,下面我們詳細來講一下:至於什么是結構體,結構體為什么會產生,我就不說了,原因很簡單,但是要注意到是結構體也是連續存儲的,但要注意的是結構體里面類型各異,所以必然會產生內存對齊的問題。也就是內存里面會有空檔。

1.結構體的定義和賦值 

結構體是可以直接初始化的,在定義的時候,就可以初始化,而且如果你的結構體中恰好有字符數組的話,這個時候初始化是不錯的選擇,原因很簡單,字符數組只能定義的時候直接初始化
后來就不可以了,后來你就只能用strcpy函數來拷貝初始化了。
struct 結構體名
{
數據類型   成員名1;
數據類型   成員名2;

數據類型   成員名n;
};

 2.定義結構體變量的倆種方法:

struct 結構體名
{
成員列表;
}變量名1;
struct 結構體名 變量名2;

 訪問結構體成員
結構體變量名.成員名


3.結構體初始化操作

struct 結構體名 變量名={初始數據表};

無名結構體
沒有類型名。
一般狀態下:無名結構體不可以定義局部變量。

4.結構體嵌套


1--- 成員所屬的數據類型是 結構體類型

2--- 內部的結構體通常定義為無名結構體

 

 

 

5.結構體數組

1--- 本質是數組,元素是結構體類型。定義了一堆結構體。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM