Teilen über


Compilerfehler C3026

"Klausel": konstanter Ausdruck muss positiv sein.

Bemerkungen

Einer Klausel wurde ein ganzzahliger Wert übergeben, der jedoch keine positive Zahl war. Die Zahl muss positiv sein.

Beispiel

Im folgenden Beispiel wird C3026 generiert:

// C3026.cpp
// compile with: /openmp /link vcomps.lib
#include <stdio.h>
#include "omp.h"

int main()
{
    int i;
    const int i1 = 0;

    #pragma omp parallel for num_threads(i1)   // C3026
    for (i = 1; i <= 2; ++i)
        printf_s("Hello World - thread %d - iteration %d\n",
                 omp_get_thread_num(), i);

    #pragma omp parallel for num_threads(i1 + 1)   // OK
    for (i = 1; i <= 2; ++i)
        printf_s("Hello World - thread %d - iteration %d\n",
                 omp_get_thread_num(), i);
}