#include <iostream>
#include <Windows.h>
using namespace std;
void exchange(int* p, int len){
int* p1 = p;//指向第一个元素
int* p2 = p + len -1;//指向最后一个元素
while(p1<p2){
int tmp = *p1;
*(p1++) = *p2;
*(p2--) = tmp;
}
cout << "num = { ";
for(int i=0; i<len; i++){
cout << p[i] << " ,";
}
cout <<" }" << endl;
}
int main(void){
int num [] = {2,5,8,7};
/*方法一
int* p1 = num;//指向第一个元素
int* p2 = num + sizeof(num)/sizeof(int) -1;//指向最后一个元素
while(p1<p2){
int tmp = *p1;
*(p1++) = *p2;
*(p2--) = tmp;
}
cout << "num = { ";
for(int i=0; i<sizeof(num)/sizeof(int); i++){
cout << num[i] << " ,";
}
cout <<" }" << endl;
*/
/*方法二
int *p3, *p4;
p3 = &num[0];
p4 = &num[3];
while(p3<p4){
int tmp = *p3;
*p3 = *p4;
*p4 = tmp;
*p3++;
*p4--;
}
for(int i=0; i< sizeof(num)/sizeof(int); i++){
cout << num[i] << " ";
}
cout << endl;
*/
//方法三
exchange(num, sizeof(num)/sizeof(int));
system("pause");
return 0;
}