c語言後定義函式前面在函式原型中為什麼要加

2021-05-28 21:39:55 字數 1362 閱讀 4592

1樓:匿名使用者

傳遞引數為陣列或者指標。形參都是以指標形式表示。

你的例,第一個引數的實參為int型,第二個的實參可以是int陣列名(第一元素地址)、int型指標(指標的值就是地址)、int值的地址(&x)

int *是一個型別

就好比如char也是一個型別。double也是一個型別。

int型別 int *型別這是兩個型別

2樓:匿名使用者

加*是指標吧?後面能加星號?

c語言中函式名前加*與不加*有什麼區別

3樓:匿名使用者

加*是返回指標

例如:int add();//add()函式返回的是一個int型別的值

int* add();//add()函式返回的是一個int型別的指標

4樓:

函式原型宣告和定義中, 函式名前加 * 的表示返回值是指標。

例如標準庫函式gets():

char *gets ( char *str );

從鍵盤讀入一行字串,如果讀入成功,返回值與str 裡 的 字串相同。

--------------

int (*p)(); 這種宣告是「定義 p 是一個指向函式的指標變數,此函式帶回整型的返回值。」例如:

int max(int,int); //函式原型宣告int min(int,int); //函式原型宣告int (*p)();

int a,b,c;

p=max; // 將函式 max 的入口地址賦給指標變數pscanf("%d,%d",&a,&b);

c=(*p)(a,b); // 等於 呼叫 c=max(a,b);

p=min; // 將函式 min 的入口地址賦給指標變數pc=(*p)(a,b); // 等於 呼叫 c=min(a,b);

5樓:匿名使用者

加*的表示函式指標,可以指向一個函式的地址,然後再呼叫函式。

書上都有,你可以去找找

6樓:宿苓貝雁菱

可以說加不加int是沒有區別的。在ansic的標準中,main的標準返回值是整型,如果你什麼都沒有加,編譯系統會自動加上int型別的。這時如果你使用gcc的話(vc是沒有的)會有一個警告。

void是無型別,表示沒有返回值,你的主函式如果不需要返回的話,最好加上它。

最後,建議你的主函式顯式的使用int型別,並return0;這是一個好習慣,開始的時候沒什麼用,時間長了才能看出來。

c語言中什麼是原型定義,C語言中函式的定義格式是什麼,函式原型宣告的語法格式?

我還直是不知道呢,我說說自己的理解吧,一個函式,可能在別外被引用或是在本檔案中但是要先引用了而後面才有函式定義,此時編譯器需要先行知道這個函式返回型別和引數類形,才可以正確的幫著做嚴格的資料型別和引數個數的檢查 如不提前申明就會當做是返回int 型,引數都當int型且不能檢查引數個數 這個函式在定義...

c語言函式的定義問題,C語言函式的定義問題

void就是沒有返回值,不需要return 是否需要返回值是由你的需求決定的。陳恩點在此為你解答如有錯誤請見諒 不是沒有返回值 是void 不能有返回值 include int f int i int main 第一個void表示沒有該函式沒有需要帶回的資料 當你的函式當中需要呼叫了某個函式,但是你...

c語言怎麼定義max函式,C語言怎麼定義max函式?

max函式 用於求最大值,可以定義如下函式 int max int a,int b 不過該函式只能用於整型而不能用於其內它型別。如容果有其它型別,比如浮點型,則需要再重新修改。float max float a float b 其實這樣 量比較少的操作,可以定義為巨集函式,即帶參巨集定義的形式。de...