c语言指针数组倒置
时间: 2023-07-03 10:16:29 浏览: 203
可以通过以下代码实现C语言指针数组的倒置:
```c
#include <stdio.h>
void reverse_array(char **arr, int size) {
char *temp;
int i;
for (i = 0; i < size / 2; i++) {
temp = arr[i];
arr[i] = arr[size - i - 1];
arr[size - i - 1] = temp;
}
}
int main() {
char *arr[] = {"This", "is", "a", "sample", "array"};
int size = sizeof(arr) / sizeof(arr[0]);
int i;
printf("Original array: ");
for (i = 0; i < size; i++) {
printf("%s ", arr[i]);
}
reverse_array(arr, size);
printf("\nReversed array: ");
for (i = 0; i < size; i++) {
printf("%s ", arr[i]);
}
return 0;
}
```
输出结果为:
```
Original array: This is a sample array
Reversed array: array sample a is This
```
在 `reverse_array()` 函数中,我们使用了一个临时指针变量 `temp`,将第 `i` 个元素与倒数第 `i+1` 个元素进行交换,直到交换到数组的中间位置为止。最后在 `main()` 函数中使用 `reverse_array()` 函数将数组倒置,然后输出结果。
阅读全文