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

正文內(nèi)容

c語(yǔ)言程序設(shè)計(jì)--cha-資料下載頁(yè)

2025-01-12 07:44本頁(yè)面
  

【正文】 intf(enter the character deleted:)。 x=getchar( )。 del_char(pt,x)。 printf(the new string is:%s\n,c)。 } \0 0 . 6 V y k s r e p s a K p q p q 二維數(shù)組的指針作函數(shù)參數(shù) 實(shí) 參 形 參 數(shù)組名 a 數(shù)組名 int x[ ][4] 指針變量 int (*q)[4] 指針變量 p1 數(shù)組名 int x[ ][4] 指針變量 int (*q)[4] 指針變量 p2 指針變量 int *q int a[3][4]。 int (*p1)[4]=a。 int *p2=a[0]。 例: 3個(gè)學(xué)生各 4門課,計(jì)算總平均分,并輸出第 n個(gè)學(xué)生成績(jī) 。 1. 用指向變量的指針變量 2. 用指向一維數(shù)組的指針變量 3. 用二維數(shù)組名 指向函數(shù)的指針 在 c語(yǔ)言中可以用函數(shù)指針調(diào)用函數(shù)。 函數(shù)名的含義 : 函數(shù)名代表一個(gè)地址,它是函數(shù)的入口,即函數(shù)代碼在內(nèi)存中的起始位置,屬于指針常量,類似于數(shù)組名。 定義一個(gè)指向函數(shù)的指針變量的一般形式如下: 類型名 (*指針變量名 )(形參表 ); 如: int (*p)(int a,int b)。 int (*p)( )。 ? (*p)( )表示一個(gè)指向函數(shù)的的指針變量,可以用來存放與指針同類型的任意函數(shù)的入口地址。 ? 在給函數(shù)的指針變量賦值時(shí),只需給出函數(shù)名而不必給出參數(shù)。如: p=max。 p=max(a,b)。 ? 用函數(shù)指針變量調(diào)用函數(shù)時(shí),只需將 (*p)代替函數(shù)名即可,如果有實(shí)參則要在 (*p)后的 ( )內(nèi)寫上實(shí)參。 如: c = (*p)(a,b)。 ? 對(duì)于指向函數(shù)的指針變量, p+n, p++, p, 等運(yùn)算無意義。 說明: ? 指向函數(shù)的的指針變量,可以作為函數(shù)的形參。 例 給出一個(gè)一維數(shù)組的元素值,先后四次調(diào)用一個(gè)函數(shù), 分別求: ① 數(shù)組中前 12個(gè)元素值之和; ② 數(shù)組中前 12個(gè)元素的最大值; ③ 數(shù)組中前 12個(gè)下標(biāo)為奇數(shù)的元素值之和; ④ 數(shù)組中前 12個(gè)元素的平均值。 返回指針值的函數(shù) 當(dāng)函數(shù)的返回值是指針類型 (地址 )時(shí),稱為指針函數(shù)。 一般定義形式 類型名 *函數(shù)名(形參表); 如: int *fun(int a)。 char *strchr(char *str,char ch) { while(*str++ != 39。\039。) if(*str==ch) return str。 return 0。 } main( ) { char *pt,ch,line[ ]=Nanjing Normal Univ.。 scanf(%c,amp。ch)。 pt=strchr(line,ch)。 printf(\nstring starts at address %x. \n,line)。 printf(First occurrence of char %c is address %x. \n,ch,pt)。 printf(This is position %d (starting from 0)\n,ptline)。 } 例 在指定的字符串中查找字符并返回該字符的地址 line pt l a m r o N g n i j n a N ptline main(int argc, char *argv[ ]) { ……… } main函數(shù)中的參數(shù) 命令行: 在操作系統(tǒng)狀態(tài)下,為執(zhí)行某個(gè)程序而鍵入的一行字符 命令行一般形式: 命令名 參數(shù) 1 參數(shù) 2…… 參數(shù) n 例: C:\TC copy[.exe] 有 3個(gè)字符串參數(shù)的命令行 帶參數(shù)的 main函數(shù)形式: 命令行中參數(shù)個(gè)數(shù) 指針數(shù)組,保存 命令行參數(shù)中各字符串首地址 命令行參數(shù)的說明 形參也可以用其它名字,習(xí)慣上為 argc 和 argv argc 和 argv 的值得獲得: 系統(tǒng)調(diào)用 main函數(shù)時(shí)自動(dòng)傳遞 。 如有參程序 , 執(zhí)行 C:\myprog argument1 argument2 編譯和鏈接 argc的值為 3 argv[2] argv[1] argv[0] main( int argc, char *argv[ ]) { int i。 for(i=1。 iargc。 i++) printf(“arg%d: %s\n”, i , argv[i])。 } 例 : 輸出各命令行參數(shù) 若可執(zhí)行文件為 ,運(yùn)行時(shí)鍵入: C:\TC\ test Computer and C Language 則: arg1: Computer arg2: and arg3: C arg4: Language argv[1] argv[2] argv[3] argv[4] Computer and C Language argv argv[0] test main(int argc, char *argv[ ]) 帶參 main函數(shù)的定義還可以寫成: main(int argc, char **argv) main(int argc, char argv[ ][ ]) 指針數(shù)據(jù)小結(jié) 常用指針類型變量歸納 定義形式 含 義 int *p p為指向整型數(shù)據(jù)的指針變量 int(*p)[n] p為指向含 n個(gè)元素的一維整型數(shù)組的指針變量 int (*p)( ) p為指向函數(shù)的指針變量,該函數(shù)返回整型數(shù) int *p[n] n個(gè)指向整型數(shù)據(jù)的指針變量組成的指針數(shù)組 int *p( ) p為返回指針的函數(shù),該指針指向一個(gè)整型數(shù)據(jù) int **p p為指針變量,它指向一個(gè)指向整型數(shù)據(jù)的指針變量 一級(jí)指針變量與一維數(shù)組的關(guān)系: ?數(shù)組名是指針 (地址 )常量; int *p; 與 int a[10]; 系統(tǒng)只給 p分配能保存一個(gè)指針值的內(nèi)存區(qū) (一般 2字節(jié));而給 a分配 2*10字節(jié)的內(nèi)存區(qū) 。 ?若 p=a。 p+i 是 a[i]的地址; ?數(shù)組元素的表示方法 :下標(biāo)法和指針法: 若 p=a,則 p[i] ? a[i] ? *(a+i) ? *(p+i)。 ?形參數(shù)組實(shí)質(zhì)上是指針變量,即 int p[ ] ? int *p。 二維數(shù)組與一維數(shù)組指針變量的關(guān)系: int a[5][10] 與 int (*p)[10]。 ?二維數(shù)組名是指向有 n個(gè)元素的一維數(shù)組的指針常量 。 ?a[i][j]?(a[i])[j]?(*(a+i))[j]?(*p)[j] ?二維數(shù)組形參實(shí)際上是一維數(shù)組指針變量, 即 int x[ ][10] ? int (*x)[10]。 系統(tǒng)只給 p分配能保存一個(gè)指針值的內(nèi)存區(qū) (一般 2字節(jié));而給 a分配 2*5*10字節(jié)的內(nèi)存區(qū) 。 ?變量定義 (不是形參)時(shí)兩者不等價(jià) : ?p=a+i; 使 p指向二維數(shù)組的第 i行 , p++,指向下一行 。 二級(jí)指針與指針數(shù)組的關(guān)系: int **p; 與 int *a[10]; ?指針數(shù)組名是二級(jí)指針常量 ; ?若 p=a。 p+i 是 a[i]的地址 ; 系統(tǒng)只給 p分配能保存一個(gè)指針值的內(nèi)存區(qū);而給 a分配 10塊 (每塊一般是 2字節(jié) )內(nèi)存區(qū),每塊可保存一個(gè)指針值 。 ?指針數(shù)組作形參, int *p[ ]與 int **p完全等價(jià) , 但作為變量定義兩者不同 : 指針的運(yùn)算 (一 )指針與整數(shù)相加 (減 ) 移動(dòng)指針的位置,以其指針類型長(zhǎng)度為單位。 p p p p p p int型數(shù)據(jù) float型數(shù)據(jù) (二 )指針的關(guān)系運(yùn)算與相減運(yùn)算 兩個(gè)指針變量比較: 比較的結(jié)果是兩個(gè)元素在數(shù)組中的前后位置,若兩個(gè)指針相等表示指向的是同一個(gè)元素。 此類運(yùn)算必須是兩個(gè)指針變量指向同一個(gè)數(shù)組的元素 兩個(gè)指針變量相減: 兩個(gè)指針變量的結(jié)果是兩個(gè)指針之間的元素個(gè)數(shù)。 (三 )指針賦值 ① 只能將對(duì)應(yīng)類型的變量地址賦值給指針 float f1,f2,*pf。 pf=amp。f1。 pf=amp。f2。 ② 同類型指針間可以相互賦值 int a,b,*pa=amp。a,*pb=amp。b。 pa=pb。 ③ 指針增 減 1 注意 ++和 運(yùn)算與 *運(yùn)算優(yōu)先級(jí)相同,它們?cè)谕粋€(gè)表達(dá)式中時(shí),應(yīng)按照結(jié)合性決定運(yùn)算順序。 例: int x[ ]={2,3,7,9}。 *px=x。 *(px+1)=5。 y = * ++px。 y = ++ *px。 5 3 指向 void類型的指針 void 指針類型為“空類型”,它可定義一個(gè)指針變量,但不指定它是指向哪一種類型數(shù)據(jù)的。 char *p1。 void *p2。 p1 = (char *) p2。 p2 = (void *) p1。 函數(shù)也可以定義為 void *類型 : void *fun(int x,int y) 表示函數(shù) fun 返回的是一個(gè)地址,它指向“空類型”。 對(duì)于這種類型的指針在給另一個(gè)指針變量賦值時(shí),要進(jìn)行強(qiáng)制類型變換,使之適合于被賦值的變量的類型。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1