来源:deepseek(已验证)
你可以直接在 C 源文件中使用 #define 来定义宏,从而将 MY_OMP_FOR 替换为 #pragma omp parallel for default(none) shared(aj, detj)。这种方法更加直观,且不需要在编译命令中额外指定 -D 选项。
以下是具体实现方法:
#include <stdio.h>
#include <omp.h>
// 定义宏
#define MY_OMP_FOR _Pragma("omp parallel for default(none) shared(aj, detj)")
int main() {
int i;
int aj[10], detj[10];
// 使用宏
MY_OMP_FOR
for (i = 0; i < 10; i++) {
aj[i] = i;
detj[i] = i * 2;
}
for (i = 0; i < 10; i++) {
printf("aj[%d] = %d, detj[%d] = %d\n", i, aj[i], i, detj[i]);
}
return 0;
}