目錄
(1)之前int、char等型別描述的結構體非常單一,只可描述一種型別。
(2)陣列也是描述同一型別的集合,只可描述一種型別。
(3)而結構體使得c語言可以描述複雜型別,比如學生型別( 包含學生的名字、年齡、性別、**號等資訊)。
結構體和陣列的區別:
2.1結構體型別的定義
格式:struct stu//結構體型別名字為struct stu(struct stu類似於int)
;//記著加;
注意ebehsibri:
(1)結構體型別的定義是在main函式外部。
(2)此處指定義了乙個結構體型別,程式設計客棧還未定義對應結構型別的變數,所以還未在記憶體中開闢空間。
2.2定義結構體普通變數及訪問
struct stu tom = ;
//定義結構體普通變數並初始化,變數名為tom,用變數名訪問結構體。
#include
struct stu
;int main()
; printf("%s程式設計客棧,%d,%s,%s\n", tom.name, tom.age, tom.***, tom.tel);//用變數名和結構成員運算子(.)訪問結構體。
return 0;
}2.3定義結構體指標變數及訪問
struct stu *s = &tom;
//定義結構體指標變數,s指向tom,有如下兩種訪問方式。
#include
struct stu
;程式設計客棧int main()
; struct stu *s = &tom;
//用結構體指標運算子->訪問(常用訪問方式)
printf("%s,%d,%s,%s\n", s->name, s->age, s->***, s->tel);
//s為指標變數,*s對指標解引用,代表指標所指向的內容。
//而且用指標和結構成員運算子(.)訪問結構體時,由於結構成員運算子(.)比指標引用運算子(*)的優先順序高,必須代括號。
printf("%s,%d,%s,%s\n", (*s).name, (*s).age, (*s).***, (*s).tel);
return 0;
}本文標題: 初識c語言結構體
本文位址: /ruanjian/c/419155.html
初識結構體
一 結構體的定義 結構體又稱為自定義資料型別 定義格式 struct 型別名 struct關鍵字 在此,我們應該注意的是 1 自定義資料型別定義完成以後等同於內建型別 2 結構體不能定義乙個自身的普通成員變數,但可以定義乙個指向自身的指標變數 看以下例子 struct student struct ...
GO結構體初識
package main import fmt 結構體 結構體 是由一系列具有相同型別或不同型別的資料構成的資料集合 結構體成員是由一系列的成員變數構成,這些成員變數也被稱為 字段 func main p2.name 狗子 p2.age 22 p2.男 p2.address 中國 fmt.print...
C語言結構體
1.1.1 結構概念 1 結構存在的意義 存在是合理的,許多事物的存在是在不斷解決問題引入的,當然有更好的方法出現時改變也是合理的。在實際問題中,一組資料往往具有不同的資料型別。例如,在學生登記表中,姓名應為字元型,學號可為整型或字元型,年齡應為整型,性別應為字元型,成績可為整型或實型。顯然不能用乙...