定义一个数组,用函数交换数组中的两个元素(C语言)
定义一个数组,用函数交换数组中的两个元素 # include <stdio.h> void swap ( int * a , int * b ) ; int main ( void ) { int Array [ ] = { 1 , 2 , 3 , 4 , 5 } ; swap ( Array + 1 , Array + 3 ) ; for ( int i = 0 ; i < 5 ; i ++ ) { printf ( "%d " , Array [ i ] ) ; } } void swap ( int * a , int * b ) { int temp ; temp = * a ; * a = * b ; * b = temp ; } 区分概念: *a : 是地址里的 值 Array+n:数组中 第 n 个 元素的 地址 &Array+n: 跨越 n 个 数组长度的 地址 区分 Array+n 和 &Array+n int Array [ ] = { 1 , 2 , 3 , 4 , 5 } ; /*定义一个数组*/ printf ( "%p\n" , Array ) ; /*Array的地址*/ printf ( "%p\n" , Array + 1 ) ; /*Array+1的地址*/ printf ( "%p\n" , & Array ) ; /*&Array的地址*/