C語言之結構體(struct)詳解

為什麼需要引入結構體

原有的數據類型不能滿足需求,因此才設計瞭構造類型結構體

struct

定義

struct name 
{
	基礎類型  結構成員	
}

1.無名構造類型

2.有名構造類型

struct student
{
 char name[30];
 char sex;
 int age;
 float high;
}stu;
struct student stu2;

3.別名構造體類型

typedef struct student
{
 char name[30];
 char sex;
 int age;
 float high;
}STUDENT;
STUDENT stu, stu2;

typedef與#define

typedef是一個常用於對結構體取別名的關鍵字,構成的語句參與編譯,而#define是定義的宏在預處理階段就已經處理完畢

結構體變量初始化及成員訪問

  •  初始化是一種特殊的語法不等價於賦值
  • 凡是基本類型既可以定義的時候初始化也可以先定義在初始化
  • 凡是構造類型要麼在定義的時候初始化,要麼先定義成員再分別進行賦值和基礎數據類型不同

結構體訪問

  • 點成員運算符.
  • 指向成員運算符->或者(*).
struct student *pst = &st
pst.age   
(*pst).age
st.age

總結

本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!

推薦閱讀: