數(shù)組作為形參
當(dāng)數(shù)組作為形參時? 比如數(shù)組名是arr 參數(shù)列表里為什么是int *arr?? 這個* 的作用是什么
int *arr是不是和int arr[]等價??? 如果不是在參數(shù)列表的話? 他們兩個又有什么異同
當(dāng)數(shù)組作為形參時? 比如數(shù)組名是arr 參數(shù)列表里為什么是int *arr?? 這個* 的作用是什么
int *arr是不是和int arr[]等價??? 如果不是在參數(shù)列表的話? 他們兩個又有什么異同
2017-07-05
舉報
2017-07-05
在參數(shù)列表中作為參數(shù)用時,在這里他們效果是一樣的,都是相當(dāng)于指針。 注:數(shù)組可以看作是常量指針,在聲明時便分配內(nèi)存,數(shù)組名就是指向數(shù)組第0個元素的指針,不過指向的地址不可變,這樣說能明白?
2017-07-05
如果不在參數(shù)列表中的話,我以為它們可能是這樣的:int *arr為一個int型指針;int arr[]為一個int型一維數(shù)組。如果我說的不對請多見諒。
2017-07-05
在參數(shù)列表中作為參數(shù)用時,數(shù)組名代表數(shù)組元素的首地址,并不代表數(shù)組中的全部元素。因此用數(shù)組名作函數(shù)實參時,不是把實參數(shù)組元素的值傳遞給形參,而只是將實參數(shù)組的首地址傳遞給形參,形參可以是數(shù)組名,也可以是指針變量,他們用來接收實參傳來的地址,這樣,實參數(shù)組和形參數(shù)組就共占同一段內(nèi)存單元。因此改變形參數(shù)組元素的值將同時改變實參數(shù)組的值,這樣做排序時,將要排序的數(shù)組傳遞到函數(shù)中,主調(diào)函數(shù)中的數(shù)組也已經(jīng)排好序了。