温馨提示×

怎么使用C语言宏定义来实现数组逆序的功能

小亿
105
2024-05-27 10:13:12
栏目: 编程语言

可以使用C语言宏定义来实现数组逆序的功能,具体代码如下:

#include <stdio.h>
#define SWAP(a, b) { int temp = a; a = b; b = temp; }

#define REVERSE_ARRAY(arr, n) do { \
    for (int i = 0; i < n / 2; i++) { \
        SWAP(arr[i], arr[n - 1 - i]); \
    } \
} while(0)

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    int n = sizeof(arr) / sizeof(arr[0]);

    REVERSE_ARRAY(arr, n);

    printf("Reversed array: ");
    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }

    return 0;
}

上述代码中,SWAP宏用于交换两个变量的值,REVERSE_ARRAY宏用于将数组逆序。在main函数中首先定义了一个数组arr,然后调用REVERSE_ARRAY宏将数组逆序,并输出结果。

0