Да, все переменные, объявленные в регионе OpenMP, являются закрытыми. Это включает в себя указатели.
Каждый поток будет иметь свою собственную копию указателя.
Это позволяет вам делать такие вещи:
int threads = 8;
int size_per_thread = 10000000;
int *ptr = new int[size_per_thread * threads];
#pragma omp parallel num_threads(threads)
{
int id = omp_get_thread_num();
int *my_ptr = ptr + size_per_thread * id;
// Do work on "my_ptr".
}