我写了一个反转任何数组的代码,它的意思是从头到尾,但它不适用于 char 的类型。我将如何编写一个恢复任何数组(int、float、char)的代码?例如原始数组为:1,2,3,4,5,6,7,8,9,10 运行后数组为:10,9,8,7,6,5,4,3 ,2,1
我的代码:
#include <stdio.h>
#define SIZE 10
void reverseArr ( void *arr, unsigned size);
void main ()
{
char a[SIZE] = {'a','b','c','d','e', 'f', 'g', 'h', 'i', 'j'};
reverseArr (a, SIZE);
}
void reverseArr ( void *arr, unsigned size)
{
int *start, *end, temp;
start=(int*)arr;
end=(int*)arr+9;
while (start<end)
{
temp=*start;
*start=*end;
*end=temp;
start++;
end--;
}
}