С точки зрения OpenMP нет никаких реальных указаний о том, как сделать отступ для кода.
То, как я пишу код, выглядело бы так:
#pragma omp parallel
for (int i = 0; i < N; i++) {
code1();
#pragma omp for // Should this line be intended?
for (int j = 0; j < M; j++) {
code2();
#pragma omp critical
{ // this curly brace needs to go on its own line
code3(); // Should this block and brackets be intended?
}
}
code4();
}
Итак, прагмы начинаются спервый столбец и код основного языка соответствуют стилю, который вы используете.Рациональным является то, что, если вы удалили все прагмы OpenMP, вы все равно получите «красивый» код базового языка.
Мне кажется, я также напоминаю, что у прагм компилятора должен быть символ «#» в первом столбце.Я оставлю это другим, чтобы исправить мою память об этом, так как я не уверен, действительно ли ISO C / C ++ этого требует.В последнее время я не видел ни одного компилятора, который бы его применял.