c語言中函數(shù)指針如何調(diào)用 C語言中指針函數(shù)的用法

C語言調(diào)用函數(shù)指針

并不是不規(guī)范的問題,你子程序?qū)懛ㄖ荒茉谧映绦蛑休敵稣_的數(shù)據(jù),而在主函數(shù)中無法得到交換過的x和y的值。參考程序運用指針讓子程序去讀寫a和b的值,在子程序執(zhí)行完成后,a和b的值確實得到了交換。

創(chuàng)新互聯(lián)建站是一家專注于網(wǎng)站制作、成都網(wǎng)站設計與策劃設計,遵義網(wǎng)站建設哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專注于網(wǎng)站建設十余年,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:遵義等地區(qū)。遵義做網(wǎng)站價格咨詢:028-86922220

你的程序中子程序采用的不是指針類型參數(shù),這樣子程序無法將交換過后的值傳回來。

C語言指向函數(shù)的指針的調(diào)用

#includestdio.h

int *d_bubblesort(int a[],int n)//數(shù)組長度為n的冒泡降序排序

{

int i,j;

int temp;

for(i=0;in;i++)

{

for(j=n-1;ji;j--)

{

if(a[j]a[j-1])

{

temp=a[j-1];

a[j-1]=a[j];

a[j]=temp;

}

}

}

return a;

}

void main()

{

int i;

int *p=NULL;

int a[10]={6,5,4,1,2,3,9,8,7,10};

int *(*fun)(int*,int);

fun=d_bubblesort;

p=fun(a,10);

for(i=0;i10;i++)

{

printf("%d\t",p[i]);

}

}

C語言函數(shù)指針怎么用?

有函數(shù): int fun(int a,int b);

要定義指向該函數(shù)的指針

對比指向 int a; 的指針

int *p; p = a;

p的定義是怎么來的?

首先要保證p是一個指針類型

寫下(*p),

然后,考慮下p的基類型,

p的基類型就是變量a的類型int

將int 放在(*p)前面就行了

int (*p);

括號可以省略,就成了 int *p;

同理

想要實現(xiàn) pf = fun;

(*pf) 將pf定義為一個指針,

將fun的類型作為pf的基類型

fun相當于一個 int (int a,int b)類型的量

int (int a,int b) (*pf);

基類型中有圓括號和中括號要后移

int (*pf)(int a,int b) ;//括號不能省略

pf = fun;

調(diào)用時

(*pf)(3,4); pf(3,4)都可以

本文名稱:c語言中函數(shù)指針如何調(diào)用 C語言中指針函數(shù)的用法
本文網(wǎng)址:http://muchs.cn/article20/dooogjo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、網(wǎng)站設計Google、云服務器、服務器托管、品牌網(wǎng)站設計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務器托管