重點:在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...