C语言:用数组名作为函数参数讲解指针

在 C 语言中,将数组名作为函数参数实际上是进行地址传递。我们来看看冒泡排序的例子:

void bubbleSort(int arr[], int len) {  
    // 对 len 个整数进行冒泡排序  
    int i, j, temp;  
    for (i = 0; i < len xss=removed> arr[j + 1]) {  
                temp = arr[j];  
                arr[j] = arr[j + 1];  
                arr[j + 1] = temp;  
            }  
        }  
    }  
}  

#define ArrSize 1000  
int main() {  
    int i, n;  
    int num[ArrSize];  
    void bubbleSort(int arr[], int len);  
    void printArr(int arr[], int len);  
    printf("number of elements (1~%d):", ArrSize);  
    scanf("%d", &n); 
    // ...  
} 

在这个例子中,bubbleSort 函数接收一个 int 类型的数组 arr 和数组长度 len 作为参数。实际上,arr 是指向数组第一个元素的指针。这意味着函数内部对 arr 的任何修改都会影响到原始数组。

ppt 文件大小:455.5KB