亚洲一级免费看,特黄特色大片免费观看播放器,777毛片,久久久久国产一区二区三区四区,欧美三级一区二区,国产精品一区二区久久久久,人人澡人人草

C語言

C語言函數(shù)指針變量

時間:2025-06-04 00:10:42 C語言 我要投稿

C語言函數(shù)指針變量

  導語:在C語言中規(guī)定,一個函數(shù)總是占用一段連續(xù)的內存區(qū), 而函數(shù)名就是該函數(shù)所占內存區(qū)的首地址。 這就是函數(shù)指針變量。下面是相關介紹,僅供參考!

  在C語言中規(guī)定,一個函數(shù)總是占用一段連續(xù)的內存區(qū), 而函數(shù)名就是該函數(shù)所占內存區(qū)的首地址。 我們可以把函數(shù)的這個首地址(或稱入口地址)賦予一個指針變量, 使該指針變量指向該函數(shù)。然后通過指針變量就可以找到并調用這個函數(shù)。 我們把這種指向函數(shù)的指針變量稱為“函數(shù)指針變量”。

  函數(shù)指針變量定義的一般形式為:

  類型說明符 (*指針變量名)();

  其中“類型說明符”表示被指函數(shù)的返回值的類型!(* 指針變量名)”表示“*”后面的變量是定義的指針變量。 最后的空括號表示指針變量所指的是一個函數(shù)。

  例如: int (*pf)();

  表示pf是一個指向函數(shù)入口的指針變量,該函數(shù)的返回值(函數(shù)值)是整型。

  下面通過例子來說明用指針形式實現(xiàn)對函數(shù)調用的方法。

  int max(int a,int b){

  if(a>b)return a;

  else return b;

  }

  main(){

  int max(int a,int b);

  int(*pmax)();

  int x,y,z;

  pmax=max;

  printf("input two numbers:/n");

  scanf("%d%d",&x,&y);

  z=(*pmax)(x,y);

  printf("maxmum=%d",z);

  }

  從上述程序可以看出用,函數(shù)指針變量形式調用函數(shù)的步驟如下:

  1. 先定義函數(shù)指針變量,如后一程序中第9行 int (*pmax)();定義pmax為函數(shù)指針變量。

  2. 把被調函數(shù)的入口地址(函數(shù)名)賦予該函數(shù)指針變量,如程序中第11行 pmax=max;

  3. 用函數(shù)指針變量形式調用函數(shù),如程序第14行 z=(*pmax)(x,y); 調用函數(shù)的一般形式為: (*指針變量名) (實參表)使用函數(shù)指針變量還應注意以下兩點:

  a. 函數(shù)指針變量不能進行算術運算,這是與數(shù)組指針變量不同的。數(shù)組指針變量加減一個整數(shù)可使指針移動指向后面或前面的數(shù)組元素,而函數(shù)指針的移動是毫無意義的。

  b. 函數(shù)調用中"(*指針變量名)"的兩邊的括號不可少,其中的*不應該理解為求值運算,在此處它只是一種表示符號。


【C語言函數(shù)指針變量】相關文章:

C語言指針變量的運算10-31

C語言指針變量的類型07-31

C語言指針函數(shù)和函數(shù)指針詳解09-29

C語言中指針變量作為函數(shù)參數(shù)詳解07-01

C語言的指針型函數(shù)09-04

C語言中指針函數(shù)與函數(shù)指針有何區(qū)別09-28

C語言函數(shù)指針與回調函數(shù)詳解10-02

c語言數(shù)組指針變量的說明和使用07-26

C語言結構體中的函數(shù)指針06-14