複習 回顧 總結 struct

2021-10-05 05:11:13 字數 3309 閱讀 4686

但需要表示一些複雜資訊時,使用單純的資料型別很不方便。

比如:學生資訊(學號,姓名,班級,**,年齡)

結構,就是程式設計師自定義的一種「資料型別」

是使用多個基本資料型別、或者其他結構,組合而成的一種新的「資料型別」。

struct 結構名 ;

例項:

struct student

;

特別注意:

1)要以 struct 開頭

2)最後要使用分號

3)各成員之間用分號隔開

#include

#include

#include

//結構, 就是程式設計師自定義的一種"資料型別"

struct student

;//結構體包含結構體的情況

struct _class

;int

main()

;printf

(, weifc.name, weifc.age, weifc.tel)

;//方式二 定義的時候我們可以指定初始化的屬性vs/vc不支援 gcc支援

//struct student s1 =;

//方式三 單獨初始化每乙個屬性

struct student s2;

strcpy

(s2.name,

"楊過");

s2.age =40;

s2.tel[0]

='\0'

;printf

(, s2.name, s2.age, s2.tel)

;struct _class c1=,

,};printf(,

c1.weifc.name, c1.weifc.age, c1.weifc.tel)

;system

("pause");

return0;

}

使用形式:

結構體變數.成員變數

中間用 . 分隔

執行結果:

;//c2 = c1; 陣列不能直接賦值

system

("pause");

return0;

}執行結果:

struct 結構名 變數名[陣列大小]

#include

#include

#include

struct student

;int

main()

使用結構體變數址指標訪問結構體成員要使用 -> 符號

#include

#include

#include

struct _friend

;int

main

(void);

struct _friend *my_girl =

&girl;

printf

("小龍女的名字: %s 性別: %s 年齡: %d\n"

, girl.name,girl.***==

'm'?

"男":

"女", girl.age)

;//指標訪問結構體變數的成員, 有兩種方式

//方式1. 直接解引

printf

("小龍女的姓名: %s 性別: %s 年齡: %d\n",(

*my_girl)

.name,

(*my_girl)

.***==

'm'?

"男":

"女",

(*my_girl)

.age)

;//方式2. 直接使用指標訪問 ->

printf

("小龍女的姓名: %s 性別: %s 年齡: %d\n"

, my_girl-

>name,

my_girl-

>***==

'm'?

"男":

"女", my_girl-

>age)

;system

("pause");

return0;

}

***實際開發中***常用 -> 符通過指標去訪問結構體指標變數的成員

執行結果:

;//形參是結構體變數, 值傳遞

struct programer add_salary

(struct programer p,

int num)

//形參使用結構體指標

void

add_salary1

(struct programer *p,

int num)

//形參使用引用

void

add_salary2

(struct programer &p,

int num)

//形參是結構體變數, 值傳遞, 返回引用

struct programer&

add_salary3

(struct programer p,

int num)

intmain

(void

)注意:一般不建議把結構體直接作為函式引數。

因為結構體的 size 比較大,直接傳遞,消耗效能!

解決方案:(使用指標和引用,優先使用引用)

執行結果:

大家對學到的知識要, 多複習, 多總結, 多敲.

我是小白, 如果存在問題, 歡迎大神給予評判指正.

錯了不可怕, 可怕的是找不出bug

複習 回顧 總結 巨集

為什麼要使用巨集 1 提高 的可讀性和可維護性 2 避免函式呼叫,提高程式效率 什麼是巨集 它是一種預處理器指令,在預編譯階段將巨集名替換為後面的替換體 巨集的定義 由三部分組成 define width 960 預處理指令 巨集名 替換體 多行可用 延續 include include defin...

個人回顧總結

答 我們的軟體要解決如何讓同學們在愉悅歡快的遊戲中收穫知識,如何把學習變成一件相對不枯燥的事情,我們利用充足的時間做了計畫,並同夏大偉老師進行商討解決了對於需求的滿足。答 有,相對來說時間相對充裕,但是由於我們要做的是遊戲,乙個全新的東西嗎,所以制定計畫有一些費力。答 我們小組意見都會說出來,如果不...

專案回顧 總結

一 團隊中每個人針對專案回顧模板中的問題,用markdown語法寫下自己的思考和回答並發布到自己的 我們的軟體要解決什麼問題?是否定義得很清楚?是否對典型使用者和典型場景有清晰的描述?我們的軟體主要解決藥品庫存量的管理,我們定義清楚,我們軟體面對的使用者是醫生和藥品庫存管理人員,面對的場景是醫院 是...