陣列作為函式引數傳遞

2021-07-22 06:22:41 字數 592 閱讀 2381

重點:在c中,陣列是不能作為引數進行傳遞的,但是可以通過傳遞指向陣列初始元素的指標,使得在函式內部運算元組成為可能。

在函式這一側,可以通過array[i]引用陣列的內容。why?本質上array[i] 不過是*(array + i)的語法糖

#include

void func(int *array, int size)

}int main()

;func(array, sizeof(array) / sizeof(int));

return

0;}

這個解決了很多關於指標的困惑。

傳遞二維陣列:

//傳遞二維陣列

#include

void func(int (*hoge)[3])//hoge是指向int陣列(個數為3)的指標

putchar('\n');

}}int main(void)

, ,

,};func(hoge);

return

0;}

陣列作為函式引數傳遞

陣列有兩個特殊的性質。一是不能複製陣列 二是使用陣列名字時,陣列會自動轉化為指向其第乙個元素的指標。由於陣列不能複製,所以無法編寫使用陣列型別形參的函式,因為陣列會被自動轉化為指標。一 一維陣列 1.三種定義形式 void printvalues int void printvalues int v...

函式作為引數傳遞

作為學前端的小白,剛開始學到函式作為引數傳遞時,簡直一臉的懵逼,為什麼有時候要加括號,有時候又不用,特別是遇到setinterval的時候。下面是參考網上的一些答案,做的一些總結 要是有什麼錯誤不合理的地方,煩請指正哦 1 首先要理解一點,函式是一種叫做function引用型別的例項,因此函式是乙個...

函式作為引數傳遞

1.當函式作為引數傳遞時,一般使用函式指標 下面是例子 include typedef int func int x,int y 定義函式指標,指向引數為int x int y 返回值為int的函式 intfunc1 int x,int y 函式func1,引數為int x int y 返回值為in...