Форма OpenMP для заявления имеет неправильную форму - PullRequest
0 голосов
/ 04 апреля 2020
int main(){
    int** a, ** b, ** c;
    N=1024
    a = (int**)malloc(N * sizeof(int* ));
    b = (int**)malloc(N * sizeof(int* ));
    c = (int**)malloc(N * sizeof(int* ));
    for (int i = 0; i < N; i++)
    {
        a[i] = (int*)malloc(N * sizeof(int));
        b[i] = (int*)malloc(N * sizeof(int));
        c[i] = (int*)malloc(N * sizeof(int));
        for (int j = 0; j < N; j++)
        {
            a[i][j] = rand() % 101;
            b[i][j] = rand() % 101;
        }

    }

    #pragma omp parallel shared(a,b,c)
    {
        #pragma omp parallel for schedule(static)
        for (int i = 0; i < N; i++){
            for (int j = 0; j < N; j++){
                c[i][j] = 0;
                for (int k = 0; k < N; k++){
                    c[i][j] += a[i][k] * b[k][j];
                }
            }
        }
    }
    printf("DONE!!");
    return 0;
}

У меня ошибка C3015: инициализация в выражении OpenMP 'for' имеет неправильную форму. Я не понимаю, я использую Visual Studio 2019, пожалуйста, помогите мне ...

...