1 c语言的结构与指标.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1 c语言的结构与指标

資料結構導論 - C語言實作 C語言的結構與指標 3.0.1 C語言的結構 結構的基礎 宣告結構型態 結構陣列 巢狀結構 建立新型態typedef 1.結構的基礎 結構(Structures)是C語言的延伸資料型態,這是一種自定資料型態(User-Defined Types),可以讓程式設計者自行在程式碼定義新的資料型態。 結構是由一或多個不同資料型態(當然可以是相同資料型態)所組成的集合,然後使用一個新名稱來代表,新名稱是一個新的資料型態,可以用來宣告結構變數。 struct Point { int x; int y; }; 2.宣告結構型態-結構宣告 在C程式宣告結構是使用struct關鍵字來定義新型態,其語法如下所示: struct 結構名稱 { 資料型態 變數1; 資料型態 變數2; …… }; 上述語法定義名為【結構名稱】的新資料型態,程式設計者可以自行替結構命名,在結構中宣告的變數稱為該結構的「成員」(Members)。 宣告結構型態-結構範例 例如:學生資料的結構student,如下所示: struct student { int id; char name[20]; int math; int english; int computer; }; 上述結構是由學號id、學生姓名name、數學成績math、英文成績english和電腦成績computer的成員變數所組成。 宣告結構型態-結構變數 當宣告student結構後,因為它是一種自訂資料型態,所以在程式碼可以使用這個新型態來宣告變數,其語法如下所示: struct 結構名稱 變數名稱; 上述宣告使用struct關鍵字開頭加上結構名稱來宣告結構變數,以本節程式範例為例,結構變數的宣告,如下所示: struct student std1; struct student std2 = {2, 江小魚, 45, 78, 66}; 宣告結構型態-結構運算 在建立好結構變數後,就可以存取結構各成員變數的值,如下所示: std1.id = 1; strcpy(, 陳會安); std1.math = 78; std1.english = 65; puter = 90; ANSI-C語言支援結構變數的指定敘述,如下所示: struct student std3; std3 = std2; 3.結構陣列 結構陣列(Arrays of Structures) 是結構資料型態的陣列。例如:test結構如下所示: struct test { int math; int english; int computer; }; 上述結構擁有3個成員變數,因為test是一種新型態,所以可以使用此型態建立陣列,如下所示: #define NUM_STUDENTS 3 struct test students[NUM]; 4.巢狀結構 巢狀結構(Nested Structures) 是在宣告的結構中擁有其它結構 例如:在student結構可以使用test結構儲存測驗成績,如下所示: struct test { int math; int english; int computer; }; struct student { int id; char name[20]; struct test score; }; 5.建立新型態typedef 在宣告結構型態後,為了方便宣告,我們可以使用一個別名來取代新的資料型態,這個別名是新增的識別字,可以用來定義全新的資料型態,其語法如下所示: typedef 資料型態 識別字; 上述識別字代表資料型態,所以可以直接使用此識別字宣告變數。例如:程式範例的test結構可以使用typedef指令定義新識別字的型態和宣告變數,如下所示: typedef struct test score; score joe; 3.0.2 指標(Pointers) C語言的指標 指標與陣列 指標與結構 1.C語言的指標 指標變數的使用 指向指標的指標變數 C語言的指標 C語言的「指標」(Points)屬於一種低階的程式處理功能,可以直接存取記憶體位址 指標變數的變數內容並不是字元或數值等基本資料型態的值,而是其它變數的「位址」(Address)。 換句話說,單獨存在的指標變數並沒有意義,因為它的值是其它變數的位址,程式需先宣告其它變數,才能取得指標變數的值,即指向其它變數的儲存位址。 指標變數的使用-說明 C語言的「指標變數」(Pointer Variables)是一種變數,其變數值是其它變數的位址(Address),如下

文档评论(0)

wujianz + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档