C.2 规则
表示法在 C 标准的第 6.1 节中所述。 此语法附录显示对 OpenMP C 和 C++ 指令的基本语言语法。
在 C++ (ISO/IEC 14882:1998) 的/* */
语句序列:
语句
openmp 指令
语句序列语句
语句序列 openmp 指令
在 C90 (ISO/IEC 9899:1990) 的/* */
语句列表:
语句
openmp 指令
语句列表语句
语句列表 openmp 指令
在 C99 (ISO/IEC 9899:1999) 的/* */
块项目:
声明
语句
openmp 指令
语句:
/* 条件语句 *
openmp 构造
openmp 构造:
并行构造
为构造
部分构造
单构造
并行构造。
并行部分构造
母版 construc
重要构造
基本构造
命令构造
openmp 指令:
障碍指令
刷新指令
构造块:
语句
并行构造:
并行指令请构造块
并行指令:
新行**# 说明 omp 并行** optseq的并行子句
并行子句:
UNIQUE 并行子句
数据子句
UNIQUE 并行子句:
(如果*表达式 *)
(num_threads *表达式 *)
为构造:
为指令迭代语句
为指令:
新行**# 说明 omp。**optseq的子句。
为子句:
UNIQUE 为子句
数据子句
nowait
UNIQUE 为子句:
排序
计划 ( 计划 kind**)**
计划 ( 计划 kind**,***表达式 *)
计划此类:
static
dynamic
引导
Runtime — 运行时
部分构造:
部分指令部分范围
部分指令:
新行 # 说明 omp 部分optseq的部分子句
部分子句:
数据子句
nowait
部分范围:
{} 部分顺序
部分顺序:
部分 directiveopt 构造块
部分指令的部分顺序构造块
部分指令:
新行的**# 说明 omp 部分**
单构造:
单指令请构造块
单指令:
新行**# 唯一批注的 omp**optseq 的单子句
单子句:
数据子句
nowait
并行为构造:
并行为指令迭代语句
并行为指令:
*新行 *# 说明 omp 并行。**optseq的并行为子句
并行为子句:
UNIQUE 并行子句
UNIQUE 为子句
数据子句
并行部分构造:
并行部分指令部分范围
并行部分指令:
新行 # 说明 omp 并行部分optseq的并行部分子句
并行部分子句:
UNIQUE 并行子句
数据子句
主构造:
主指令请构造块
主指令:
新行的**# 说明 omp 母版**
重要构造:
重要指令请构造块
重要指令:
新行**# 重要说明的 omp**opt 的区域声明
区域声明:
(标识符)
障碍指令:
新行的**# 说明 omp 障碍**
基本构造:
基本指令表达式语句
基本指令:
新行的**# 基本批注的 omp**
刷新指令:
# 说明 omp 刷新刷新varsopt 新行
刷新 vars:
(将变量列表)
命令构造:
命令指令请构造块
命令指令:
新行的**# 顺序的说明 omp**
声明:
/* 标准声明 *
threadprivate 指令
threadprivate 指令:
# 说明 omp (threadprivate变量列表 新行的**)**
数据子句:
(专用*变量列表 *)
(copyprivate 变量列表 )
(firstprivate 变量列表 )
(lastprivate变量列表 )
共享 (变量列表)
默认 (共享)
默认 (无)
(减少 缩减运算符 : 变量列表 )
(copyin 变量列表 )
缩减运算符:
一: + * - ^| ||
/* 在 C *
变量列表:
identifier
变量列表**,**标识符
在 C++ 中/* */
变量列表:
id 表达式
变量列表**,**ID 表达式