結構體與共用體

結構體與共用體

ID:44991357

大?。?71.00 KB

頁數(shù):20頁

時間:2019-11-06

結構體與共用體_第1頁
結構體與共用體_第2頁
結構體與共用體_第3頁
結構體與共用體_第4頁
結構體與共用體_第5頁
資源描述:

《結構體與共用體》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。

1、第十一章 結構體與共用體結構的基本概念結構數(shù)組111.1結構體概述numnamesexagescoreaddr10010LiFengM1887.5Beijing10011LiuJingW1890Nanjing10012SuRuiW1885Xuzhou用什么樣的數(shù)據(jù)類型 來存儲表中每一行數(shù)據(jù)呢?2順序號()書名()書價()管藏數(shù)量()作者姓名()出版社()出版日期()長整型(long)字符串實型(float)整型(int)字符串字符串(待定)數(shù)據(jù)項名類型怎樣描述圖書管中某本書籍的各項數(shù)據(jù)這里需要將不同類型的數(shù)據(jù)組合成一個整體

2、,可以聲明一個新的構造型數(shù)據(jù)類型:11.2結構體與結構體類型變量3實際上,這就聲明了一個結構類型:structbooks為此,我們可有如下定義(暫不考慮出版日期):structbooks{longnum;charname[50];floatprice;inttotal;charauthor[20];charpubass[50];};將幾種不同類型的數(shù)據(jù)組合成一個整體。4結構中的成員也可以是結構類型變量structdate{intyear,month,day;};現(xiàn)在,可以重新定義結構類型structbooks如下:5str

3、uctdate{intyear,month,day;};structbooks{longnum;charname[50];floatprice;inttotal;charauthor[20];charpubass[50];structdatepubdata; };6形式一先聲明類型,再定義變量:定義結構類型變量的方法:structdate{intyear,month,day;};structbooks{longnum;charname[50];floatprice;inttotal;charauthor[20];charp

4、ubass[50];structdatepubdata; };再用已聲明的結構類型定義結構變量:structbooksbook1,book2,book3;7形式二、結構類型和結構變量一起定義:structbooks {longnum; charname[50]; floatprice;inttotal; charauthor[20]; charpubass[50];structdatepubdata; }book1,book2,book3;8形式三、直接定義結構類型變量,省略結構名:如:struct{longnum; ch

5、arname[50]; floatprice;inttotal; charauthor[20]; charpubass[50];structdatepubdata; }book1,book2,book3;無結構名9關于結構體類型的說明類型與變量是不同的概念,不能對類型賦值,只能對變量賦值,結構體類型的地位與int,float等數(shù)據(jù)類型的地位相同,只是前者必須定義,后者不需定義。對結構體類型變量的定義方法與前面學過的數(shù)據(jù)類型的變量的定義方法相同??梢詥为氁媒Y構體變量中的各個成員,它們相當于普通變量。成員也可以是一個結構體變

6、量。10由結構體變量名引用其成員的標記形式為:結構體變量名.成員名其中圓點運算符是成員運算符,它的運算級別最高結構變量名?成員名如book1?num=7387221;結構變量的引用11結構體型變量可以整體引用來賦值:如book2=book1;即將變量book1的所有成員的值一一賦給變量book2的各成員。結構體型變量不可進行整體的輸入輸出,如:printf(″%s″,book1);是錯誤的。結構體型變量只能對逐個成員進行輸入或輸出。12若結構體定義是嵌套的,則只能引用最低級的成員(用若干“.”運算符,逐級引用到最低級)。如

7、:book1?pubdata?year=1993;book1?pubdata?month=9;book1?pubdata?day=30;不可對book1?pubdata進行操作,因其不是最低級。對成員變量可以像普通變量一樣進行各種運算如:book2?num=book1?num;book1?price=book2?price+5;book1?total++;成員運算符的優(yōu)先級最高13結構變量的初始化1、結構變量的初始化下例對類型為structdata的結構變量workday和birthday作初始化:structbooksb

8、ook={7387221,“Clanguage”,17.8,20,“Tanhaoqiang”,“Qinghuauniversity”,{1997,7,1}};structdataworkday={1998,11,22},birthday={1980,10,19};成員類型更復雜的結構變量怎樣作初始化?對

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內容,確認文檔內容符合您的需求后進行下載,若出現(xiàn)內容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。