C語言中 數組作為函數參數時元素傳入的...格式?沒看懂教程額
#include?<stdio.h> void?replaceMax(int?arr[],int?value) { ????int?max?=?arr[0]; ????int?index?=?0; ????int?i; ????for(i=1;i<5;i++) ????{ ????????if(arr[i]>max) ????????{ ????????????max?=?arr[i];?//將數組中較大的數賦值給max ????????????index?=?i;??//記錄當前索引 ????????}???????????????? ????}?? ????arr[index]?=?value; } int?main() { ????int?arr1[]?=?{10,41,3,12,22}; ????int?arr2[]?=?{1,2,3,4,5}; ????int?i; ????replaceMax(arr1,?arr2[0]);?//將數組arr1和數組arr2的第一個元素傳入函數中 ????for(i=0;i<5;i++) ????{ ????????printf("%d?",arr1[i]);???????????????? ????} ????return?0;???? }
求助為什么第23行代碼 ?將數組arr1和數組arr2的第一個元素傳入函數中 時,不需要在arr1后加[0]呢?? replaceMax(arr1, arr2[0]); //將數組arr1和數組arr2的第一個元素傳入函數中
謝謝前輩們,六一快樂噠~(雖說不是六一了(●'?'●))
2016-06-04
23行是調用的第二行中編寫的方法 ?void?replaceMax(int?arr[],int?value)
該方法的第一個參數要求是數組arr[],第二個參數要求是整型值value,
所以調用的時候將arr1代表的數組作為數組參數傳遞給此方法,將arr2[0](數組arr2的第一個元素)作為整形參數傳遞給此方法。
2016-06-04
第2行函數?void?replaceMax(int?arr[],int?value)
參數對應是?void?replaceMax(int數組,int 數)
所以調用的時候將arr1數組整個傳遞,將arr2中的一個數作為傳遞。