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

正文內(nèi)容

指針_計算機基礎(chǔ)知識(參考版)

2024-09-04 09:33本頁面
  

【正文】 …… p1=(char *)p2。 void *p2。指向前面的元素的指針變量“小于”指向后面元素的指針變量。//讓 p1指向 p2所指向的存貯單元 p=NULL。 p=max。 //將數(shù)組的首地址賦給指針變量 p=amp。a。)。:39。 } echo程序: main(int argc,char *argv[]) { while (argc1) printf(%s%c\n,*++argv,(argc1)?39。 argc。 main函數(shù)的原型是: main(int argc,char *argv[]) main(int argc,char *argv[ ]) { while (argc1) {argv++。 } } main函數(shù)的形參 指針數(shù)組一個重要的應(yīng)用是作為 main函數(shù)的形參。i++) {printf(%5d,**p)。 for(i=0。 int i。a[4]}。a[2] ,amp。a[0], amp。 } } 例 2,間接尋址舉例 main() {static int a[5]={1,3,5,7,9}。i++) {p=name+i。 for(i=0。 char **p。 *p是一個指向字符型的指針變量, **p是一個指向字符型指針變量的指針。 } 指向指針數(shù)據(jù)的指針變量,簡稱為指向指針的指針,定義的形式: 類型 **變量; char **p。 sort(name,n)。 } main() {char *name[]={Follow me,BASIC, Great wall,FORTRAN,Computer design}。in。 } } } void print(char *name[],int n) {int i。 name[i]=name[k]。j++) if (strcmp(name[j],name[k])0) k=j。 for (j=i+1。in1。 int i,j,k。當要對字符串進行排序時,可以不改變字符串本身的存貯,只改變指針值即可,可節(jié)約時間。 []的優(yōu)先級高于 *,所以 p先與 []結(jié)合,形成數(shù)組,然后再與 *結(jié)合, *表示此數(shù)組是指針類型,每個元素都可指向一個整型變量 指針數(shù)組比較適合處理若干字符串,使字符串處理更加方便靈活。 元素均為指針類型的數(shù)組,稱為指針數(shù)組。 return pt。i4。 pt=*(pointer+1)。 }//end_if }//end_for } float *search(float (*pointer)[4]) { int i。j++) printf(%,*(p+j))。 for (j=0。i++) {p=search(score+i)。 for(i=0。 float *p。 } 例,對上例中的學(xué)生,找出其中有不及格課程的學(xué)生及其學(xué)號 main() {float score[][4]={{60,70,80,90},{56,89,67,88},{34,78,90,6}}。j++) printf(%,*(p+j))。 for(j=0。n)。 int j,n。 float *search(float (*pointer)[4],int n)。 return pt。 定義函數(shù) search,返回第 n個學(xué)生的首門課的地址(列) float *search(float (*pointer)[4],int n) {float *pt。 一般定義形式為: 類型名 *函數(shù)名 ( 參數(shù)列表 ) int *a(int x,int y) 調(diào)用 a后能得到一個指向整型數(shù)據(jù)的指針 。 } 說明:主函數(shù)中對 max(),min(),add()等三個函數(shù)的聲明是必不可少的 , 以前函數(shù)不聲明 , 隱含為函數(shù)類型為整型 , 但在此 max,min,add做為函數(shù)參數(shù)進行調(diào)用時 , 只給函數(shù)名而沒有函數(shù)的實參及括號 , 所以編譯系統(tǒng)些時不易區(qū)分它們是變量還是函數(shù)名 , 以前做為函數(shù)調(diào)用時 , 后面的括號及參數(shù)可以告知編譯系統(tǒng)它們是函數(shù)名 。 result=(*fun)(x,y)。 process(a,b,add)。 process(a,b,min)。 process(a,b,max)。b)。 scanf(%d%d,amp。 int process(int,int,int(*fun)())。 int min(int,int)。輸入 a,b后,第一次調(diào)用時找出 a和 b中的大者,第二次找出小者,第三次求 a+b。通過用函數(shù)指針變量做函數(shù)形參,可以實現(xiàn)靈活調(diào)用不同的函數(shù),提高函數(shù)的通用性。 } (1)指向函數(shù)的指針變量的一般定義形式: 數(shù)據(jù)類型 ( *指針變量名)(); (2)函數(shù)調(diào)用可以通過函數(shù)名,也可以通過函數(shù)指針調(diào)用 (3)( *p) ()只是定義了一個指向函數(shù)的指針變量,但指向哪一個并不確定;在一個程序中, 一個指針變量可以先后指向返回類型相同的不同函數(shù) (4)給函數(shù)指針變量賦初值時,只給函數(shù)名不給參數(shù) (5)調(diào)用函數(shù)時,用( *p)取代函數(shù)名,實參照常 (6)對指向函數(shù)的指針變量進行加減運算沒有意義,如 p++ 函數(shù)指針變量的 主要用途是做函數(shù)參數(shù)。//c=p(a,b)。 c=max(a,b)。a,amp。 p=max。 int (*p)()。 …… a[i] 指向函數(shù)的指針 一個函數(shù)在編譯時初分配一個入口地址,這個地址就稱為 函數(shù)的指針 ,可以用一個指針變量指向函數(shù),然后通過該指針變量調(diào)用此函數(shù)。 (5) 定義了一個指針變量并使它指向一個字符串后,就可以用下標形式引用其中的字符。 printf(“%s”,a)。 (4) 指針變量的值可以改變 ,而數(shù)組名是常量,不可以改變其值 char *a=”I love China”。 s=str。 scanf(“%s”,s)。 //合法的 上面兩語句等價于: char *a=”I love China”。//錯誤的 上述兩語句不等價于: char str[20]=”I love China” char *a。 } 形參和實參都可以是字符數(shù)組或字符指針變量,很靈活 討論 (1)字符數(shù)組的每個元素存放一個字符,字符指針變量只存放字符串的首地址,而不是將字符串放到字符指針變量中 (2)賦值方式,對字符數(shù)組只能對各元素賦初值,字符指針變量可以整體賦值 char str[20]。 p2=to。 形參為數(shù)組時,也可以用指針變量 void copy_str(char from[],char to[]) {char *p1,*p2。*to++=*from++。)。 (5)for(。 (4)while(*to++=*from++)。 (3)while (*from!=’\0’) *to++=*from++。 } 對上述函數(shù)體可有多種寫法 (1)while((*to=*from)!=’\0’) {to++。from++,to++) *to=*from。 } (2)形參用字符指針變量 void copy_str(char *from,char *to) { for(。 i++。 } 字符串數(shù)組或指針做函數(shù)參數(shù)可以實現(xiàn)地址傳遞 (1)用字符數(shù)組做參數(shù) void copy_str(char from[],char to[]) {int i=0。 *p2=’\0’。*p1!=’\0’。 p2=b。 int i。 //printf(%s,b)。\039。 for(i=0。 *(b+i)=39。\039。 for(i=0。 char b[15]。 (2)用字符型指針變量或字符數(shù)組表示的字符串可以用 %s整體輸入輸出,其他類型的指針變量或數(shù)組不可以,只能逐個分量操作。 把字符串的首地址賦給 str,不等價于 char *str。 等價于 char *str。 printf (“%s\n”,str)。 printf(“%s\n”,str)。 printf(\n)。j4。 if (flag==1) { printf(number %d student fails:\n,i)。j4。i++) {flag=0。 for(i=0。i++) printf(%,*(*(p+n)+i))。 for(i=0。 } void search(float (*p)[4],int n) {int i。 avg=sum/n。pp_end。 p_end=p+n1。 float *p_end。 search(score,2)。 float score[3][4]={65,67,70,60,80,87,90,81,90,99,100,98}。 main() {void average(float *p,int n)。 } ? 一維數(shù)組名可以作函數(shù)參數(shù),多維數(shù)組名也可以做為參數(shù)傳遞。j)。 scanf(%d%d,amp。 int i,j,(*p)[4]。 p可以指向由四個分量組成的一維數(shù)組 ,p每次 +1,移動的單元數(shù)是一維數(shù)組所占的單元數(shù) ,它等同于二維數(shù)組的行移動 .
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1