您好,登錄后才能下訂單哦!
結構體聽上去就覺得專業性很強,硬梆梆的,不夠友好。咱們換個說法,其實它就是一“機票”。對,“飛機票”的格式。
呃,一般的寫法是這樣的:
struct Ticket{ (“機票”這種類型約定首字母大寫)
char name[20] (乘客姓名)
char airline[10] (航班)
int takeoff (起飛時間)
int arrive (到達時間)
(還有一些亂七八糟的信息,略)
}passenger1,passenger2; (“乘客1、乘客2”變量名約定全部小寫。注意分號)
然后,對“乘客1、乘客2”錄入對應的姓名啥的,就可以用了。可以繼續添加新乘客,然后出票。如果后面跟的變量名比較多,可以不用緊跟在struct的“}”屁股后面去定義,比如像下面這樣另取一行:
struct Ticket passenger1,passenger2;
上面兩種是最常用的寫法,其他的表達方式就別管他了,吃飽了撐著的人才會去記。
接下來是想獲得乘客1的“到達時間”怎么做?“passenger1.arrive”,就像VB里取屬性一樣,專業說法稱為“引用”。如何初始化全部乘客信息呢?“passenger1={“Lining”,"MF3678",1600,1900};”。
結構體數組就是一種應付許多“乘客”的一種策略。20個乘客寫作“passenger[20]”,passenger[1]相當于“乘客1”。顯然,在“passenger[1]”里面包含了“機票”上所應有的全部信息。有了數組這個抽象的東西,就不用逐個去定義struct變量了。
結構體指針,把結構體當作一種變量類型,按指針變量進行操作。一開始不習慣,摸熟了腦子就轉過彎來了。還是以“機票”為例:
struct Ticket passenger1; (聲明結構體變量)
struct Ticket *point; (聲明結構體指針變量point)
point=&passenger1;(取passenger1地址)
然后有以下等價形式:
passenger1.name = (*point).name = point->name (最后這個“->”稱為“指向運算符”,指針變量專屬哦!)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。