代码接口说明如下:
1、void ArrayReverseOrder(char* array,int size);
功能:将数组元素位置翻转,例如a[]={1,2,3},最终a[]={3,2,1}
array:数组首地址
size:数组大小
2、void Print_Array(char* array,int size)
打印调试代码
具体代码实现如下:
#include <stdio.h>
/* 数组正逆序交换函数 */
void ArrayReverseOrder(char* array,int size){
int i;
int LoopNum = size/2;
for(i=0;i<LoopNum;i++){
array[i] = array[i]^array[size-1-i];
array[size-1-i] = array[i]^array[size-1-i];
array[i] = array[i]^array[size-1-i];
//printf("Debug:i=%d,array[i]=%d,array[size-i]=%d\n",i,array[i],array[size-i]);
}
}
/* 打印数组 */
void Print_Array(char* array,int size){
int i;
for(i=0;i<size;i++){
printf("%d ",array[i]);
}
}
int main(){
char a[] = {1,2,3,4,5,6,7};
ArrayReverseOrder(a,sizeof(a)/sizeof(char));
Print_Array(a,sizeof(a)/sizeof(char));
return 0;
}