在不申请另一个数组的情况下,定义 i j 指标分别指向数组头和尾,然后利用中间变量,i++,j-- 遍历互换。
#include <iostream>
#define LEN(array, type) (sizeof(array)/sizeof(type))
using namespace std;
void TestReverseArray(){
int array[] = {1,2,3,4,5,6};
int length = LEN(array, int);
int temp;
cout << "The original array:" << endl;
for (int i = 0; i < length; ++i) {
cout << array[i] << ", ";
}
for (int i = 0,j = length-1; i < j; ++i, --j) {
temp = array[i];
array[i] = array[j];
array[j] = temp;
}
cout << "\nThe reversed array:" << endl;
for (int i = 0; i < length; ++i) {
cout << array[i] << ", ";
}
}