陣列做函式引數的退化問題

2021-07-22 15:57:24 字數 694 閱讀 9868

#include#includevoid arraysort(int a,int num)//===void arraysort(int *a,int num)

} }

}void print_array(int a,int num)

}int main()

; int i =0;

int num = sizeof(a)/sizeof(a[0]);//num=5

printf("num:%d\n",num);

//陣列做函式引數的退化問題,陣列做函式引數退化為乙個指標

//把陣列記憶體的首位址和陣列的有效長度傳遞給被呼叫函式

//實參的a和形參a資料型別本質不一樣,形引數組a編譯器會把它當成指標處理

多維陣列做函式引數的退化

退化過程 void printarray01 int a 3 5 4k void printarray02 int a 5 5k void printarray03 int myarray 5 這就是陣列指標 6k 多維陣列做函式引數為什麼會存在退化?為什麼編譯器要設計成這個樣子 如何證明二維陣列在...

陣列排序及陣列做函式引數將會退化為指標

陣列排序 1.選擇排序思想 2.選擇排序初級 include include int main int a 10 int k 0 int j 0,i 0,temp 0 printf 排序前 n 排序前列印輸出 for k 0 k 10 k printf d a k printf n for i 0 ...

排序熱身及陣列做函式引數退化為指標引申

先說排序比較常用的是氣泡排序 先介紹個簡單的 氣泡排序的原理就是先獲取到每個陣列的元素 然後迴圈的和自己下乙個去比較 判斷是否大於還是小於 之後做下替換 例 int number 5 先定義乙個陣列 進行排序 for int i 0 i 5 i 他先拿著第乙個數字和下面乙個去比較 第一輪比較下來之後...