freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

譚浩強(qiáng)c語(yǔ)言word版11(參考版)

2024-09-08 18:25本頁(yè)面
  

【正文】 有時(shí)也可用宏定義來(lái)代替 typedef 的功能,但是宏定義是由預(yù)處理完成的,而 typedef則是在編譯時(shí)完成的,后者更為靈活方便。 定義 STU表示 stu的結(jié)構(gòu)類型,然后可用 STU來(lái)說(shuō)明結(jié)構(gòu)變量: STU body1,body2。 char sex。 完全等效于: char a1[20],a2[20],s1[20],s2[20] 又如: typedef struct stu { char name[20]。 表示 NAME 是字符數(shù)組類型,數(shù)組長(zhǎng)度為 20。 用 typedef定義數(shù)組、指針、結(jié)構(gòu)等類型將帶來(lái)很大的方便,不僅使程序書寫簡(jiǎn)單而且使意義更為 明確,因而增強(qiáng)了可讀性。 例如: INTEGER a,b。 其中 int是整型變量的類型說(shuō)明符。類 型定義符 typedef即可用來(lái)完成此功能。 } } printf(\n)。 break。d39。 break。c39。 break。b39。 break。a39。i=30。 if (jd) j=a。i++){ month[i]=j。 for(i=1。 int i。 還應(yīng)該說(shuō)明的是枚舉元素不是字符常量也不是字符串常量,使用時(shí)不要加單、雙引號(hào)。 如: a=(enum weekday)2。 是錯(cuò)誤的。而: a=0。 b=mon。 } 說(shuō)明: 只能把枚舉值賦予枚舉變量,不能把元素的數(shù)值直接 賦予枚舉變量。 c=tue。 a=sun。如在 weekday中, sun值為 0, mon值為 1, …,sat值為 6。 都是錯(cuò)誤的。 mon=2。不能在程序中用賦值語(yǔ)句再對(duì)它賦值。 或者為: enum { sun,mou,tue,wed,thu,fri,sat }a,b,c。 enum weekday a,b,c。 2. 枚舉變量的說(shuō)明 如同結(jié)構(gòu)和聯(lián)合一樣,枚舉變量也可用不同的方式說(shuō)明,即先定義后說(shuō)明,同時(shí)定義說(shuō)明或直接說(shuō)明。 例如: 該枚舉名為 weekday,枚舉值共有 7 個(gè),即一周中的七天。 在枚舉值表中應(yīng)羅列出所有可用值。應(yīng)該說(shuō)明的是,枚舉類型是一種基本數(shù)據(jù)類型,而不是一種構(gòu)造類型,因?yàn)樗荒茉俜纸鉃槿魏位绢愋汀榇?,C語(yǔ)言提供了一種稱為“枚舉”的類型。例如,一個(gè)星期內(nèi)只有七天,一年只有十二個(gè)月,一個(gè)班每周有六門課程等等。 pb為后一結(jié)點(diǎn)的指針變量。在 creat函數(shù)內(nèi)定義了三個(gè) stu結(jié)構(gòu)的指針變量。結(jié)構(gòu)stu定義為外部類型,程序中的各個(gè)函數(shù)均可使用該定義。 } 在函數(shù)外首先用宏定義對(duì)三個(gè)符號(hào)常量作了定義。 pf=pb。 else pfnext=pb。pbage)。 scanf(%d%d,amp。i++) { pb=(TYPE*) malloc(LEN)。 for(i=0。 TYPE *creat(int n) { struct stu *head,*pf,*pb。 struct stu *next。程序如下: define NULL 0 define TYPE struct stu define LEN sizeof (struct stu) struct stu { int num。為簡(jiǎn)單起見, 我們假定學(xué)生數(shù)據(jù)結(jié)構(gòu)中只有學(xué)號(hào)和年齡兩項(xiàng)。 鏈表的基本操作對(duì)鏈表的主要操作有以下幾種: 1. 建立鏈表; 2. 結(jié)構(gòu)的查找與輸出; 3. 插入一個(gè)結(jié)點(diǎn); 4. 刪除一個(gè)結(jié)點(diǎn); 下面通過(guò)例題來(lái)說(shuō)明這些操作。 struct stu *next。 例如,一個(gè)存放學(xué)生學(xué)號(hào)和成績(jī)的結(jié)點(diǎn)應(yīng)為以下結(jié)構(gòu): struct stu { int num。另一個(gè)域?yàn)橹羔樣?,存放下一結(jié)點(diǎn)的首地址。 圖中,第 0個(gè)結(jié)點(diǎn)稱為頭結(jié)點(diǎn),它存放有第一個(gè)結(jié)點(diǎn)的首地址,它沒有數(shù)據(jù),只是一個(gè)指針變量。這樣一種連接方式,在數(shù)據(jù)結(jié)構(gòu)中稱為 “鏈表 ”。 可在第一個(gè)結(jié)點(diǎn)的指針域內(nèi)存入第二個(gè)結(jié)點(diǎn)的首地址,在第二個(gè)結(jié)點(diǎn)的指針域內(nèi)又存放第三個(gè)結(jié)點(diǎn)的首地址,如此串連下去直到最后一個(gè)結(jié)點(diǎn)。結(jié)點(diǎn)之間的聯(lián)系可以用指針實(shí)現(xiàn)。另一方面,用數(shù)組的方法必須占用一塊連續(xù)的內(nèi)存區(qū)域。有一個(gè)學(xué)生就分配一個(gè)結(jié)點(diǎn),無(wú)須預(yù)先確定學(xué)生的準(zhǔn)確人數(shù),某學(xué)生退學(xué),可刪去該結(jié)點(diǎn),并釋放該結(jié)點(diǎn)占 用的存儲(chǔ)空間。而且當(dāng)學(xué)生留級(jí)、退學(xué)之后也不能把該元素占用的空間從數(shù)組中釋放出來(lái)。有多少個(gè)學(xué)生就應(yīng)該申請(qǐng)分配多少塊內(nèi)存空間,也就是說(shuō)要建立多少個(gè)結(jié)點(diǎn)。 鏈表的概念 在例 。最后用 free函數(shù)釋放 ps指向的內(nèi)存空間。然后分配一塊 stu大內(nèi)存區(qū),并把首地址賦予 ps,使 ps指向該區(qū)域。 free(ps)。 printf(Number=%d\nName=%s\n,psnum,psname)。M39。 psname=Zhang ping。 ps=(struct stu*)malloc(sizeof(struct stu))。 float score。 char *name。 【例 】分配一塊區(qū)域,輸入一個(gè)學(xué)生數(shù)據(jù)。 功能:釋放 ptr 所指向的一塊內(nèi)存空間, ptr 是一個(gè)任意類型的指針變量,它指向被釋放區(qū)域的首地址。因此該語(yǔ)句的意思是:按 stu的長(zhǎng)度分配 2塊連續(xù)區(qū)域,強(qiáng)制轉(zhuǎn)換為 stu類型,并把其首地址賦予指針變量 ps。 例如: ps=(struet stu*)calloc(2,sizeof(struct stu))。 (類型說(shuō)明符 *)用于強(qiáng)制類型轉(zhuǎn)換。 調(diào)用形式: (類型說(shuō)明符 *)calloc(n,size) 功能:在內(nèi)存動(dòng)態(tài)存儲(chǔ)區(qū)中分配 n塊長(zhǎng)度為 “size”字節(jié)的連續(xù)區(qū)域。 表示分配 100個(gè)字節(jié)的內(nèi)存空間,并強(qiáng)制轉(zhuǎn)換為字符數(shù)組類型,函數(shù)的返回值為指向該字符 數(shù)組的指針,把該指針賦予指針變量 pc。 “ size”是一個(gè)無(wú)符號(hào)數(shù)。 “類型說(shuō)明符”表示把該區(qū)域用于何種數(shù)據(jù)類型。 常用的內(nèi)存管理函數(shù)有以下三個(gè): 1. 分配內(nèi)存空間函數(shù) malloc 調(diào)用形式: (類型說(shuō)明符 *)malloc(size) 功能:在內(nèi)存的動(dòng)態(tài)存儲(chǔ)區(qū)中分配一塊長(zhǎng)度為 size字節(jié)的連續(xù)區(qū)域。對(duì)于這種問(wèn)題,用數(shù)組的辦法很難解決。 用變量表示長(zhǎng)度,想對(duì)數(shù)組的大小作動(dòng)態(tài)說(shuō)明,這是錯(cuò)誤的。n)。 例如: int n。 動(dòng)態(tài)存儲(chǔ)分配 在數(shù)組 一章中,曾介紹過(guò)數(shù)組的長(zhǎng)度是預(yù)先定義好的,在整個(gè)程序中固定不變。在函數(shù) ave中完成計(jì)算平均成績(jī)和統(tǒng)計(jì)不及格人數(shù)的工作并輸出結(jié)果。在 main 函數(shù)中定義說(shuō)明了結(jié)構(gòu)指針變量 ps,并把 boy 的首地址賦予它,使 ps 指向 boy 數(shù)組。 } 本程序中定義了函數(shù) ave,其形參為結(jié)構(gòu)指針變量 ps。 ave=s/5。 if(psscore60) c+=1。i5。 float a
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1