フォーミュラノードの構文



LabVIEW 2018ヘルプ


発行年月: 2018年3月
製品番号: 371361R-0112
製品情報を参照

ダウンロード (Windowsのみ)


LabVIEW 2016ヘルプ
LabVIEW 2017ヘルプ
LabVIEW 2018ヘルプ
LabVIEW 2019ヘルプ
LabVIEW 2020ヘルプ

フォーミュラノードの構文は、テキストベースのプログラミング言語で使用されている構文に似ています。C言語と同様に、割り当ての最後にセミコロン(;)を入力してください。フォーミュラノードで変数を宣言するにはスコープ規則を使用します。また、フォーミュラノードの使用可能な関数使用可能な演算子と優先度を考慮に入れてください。

メモ メモ  プログラミングのC言語を知っていれば、フォーミュラノードを効果的に使用することができます。『LabVIEWヘルプ』は、読者がすでにC言語に精通していることを前提としており、C言語に関するトピックは含まれていません。C言語については、 Brian W. Kernighan、Dennis M. Ritchie共著『The C Programming Language』またはHerbert Schildt著『Teach Yourself C』を参照してください。

バッカスナウル形式(BNF表記法)を使用したフォーミュラノードの構文を以下に要約します。要約には、複合ステートメント、識別子、条件式、数値、配列サイズ、浮動小数点タイプ、整数タイプ、LHS、代入演算子、関数などの非終端記号が含まれています。赤色の太字のモノスペースフォントで示された記号は、記述通りに使用する必要のある終端記号です。#の記号は、後続の用語の任意の数を示します。

ステートメントリスト:

ステートメント ;
ステートメント ; ステートメントリスト

ステートメント:

代入
複合ステートメント
制御ステートメント
条件ステートメント
反復ステートメント
switchステートメント
変数宣言

代入:

表記
LHS 代入演算子 代入

表記:

表記 バイナリ演算子 表記
 単項演算子 表記
表記 単項演算子
表記 ? 表記 : 表記
( 表記 )
識別子
定数
関数名 ( 引数リスト )

LHS:

識別子
識別子 配列サブスクリプション

配列サブスクリプション:

[代入]
[代入] 配列サブスクリプション

アサイメント演算子:次のうち1つ

= += –= *= /= >>= <<= &= ^= |= %= **=

バイナリ演算子:次のうち1つ

+ – * / ^ != == > < >= <= && || & | % **

単項演算子:次のうち1つ

+ – ! ++ –– ~

引数リスト:

表記
表記 , 引数リスト

定数:

pi
数値

複合ステートメント:

{ ステートメントリスト }

以下の表は、制御、条件、反復、およびswitchステートメントのフォーミュラノードの構文を表示しています。

ステートメントタイプコンストラクト文法説明/サンプル
制御ステートメントBreakステートメントbreak フォーミュラノード内で直前に実行されたdo、for、またはwhileループやswitchステートメントを終了するには、breakキーワードを使用します。
Continueステートメントcontinueフォーミュラノード内で直前のdo、for、またはwhileループの次の反復に制御を渡すには、continueキーワードを使用します。
条件ステートメント条件ステートメント:
   ifステートメント
   if-elseステートメント

if (y==x && a[2][3]<a[0][1]) {
     int32 temp;
     temp = a[2][3];
     a[2][3] = y;
     y=temp;
     }
else
     x=y;
Ifステートメントifステートメント:
   if ( 代入 )ステートメント

If-Elseステートメントif-elseステートメント:
   ifステートメントelseステートメント
反復ステートメント反復ステートメント:
   doステートメント
   forステートメント
   whileステートメント
Doループdo ステートメント while ( 代入 ) do {
     int32 temp;
     temp = --a[2]+y;
     y=y-1;
     }
while (y!=x && a[2]>=a[0]);
Forループfor ( [代入] ; [代入] ; [代入] ) ステートメント for (y=5; y<x; y*=2) {
     int32 temp;
     temp = --a[2]+y;
     x-=temp;
     }
Whileループwhile ( 代入 ) ステートメント while (y!=x && a[2]>=a[0]) {
     int32 temp;
     temp = --a[2]+y;
     y=y-1;
     }
Switchステートメントswitch ( 代入 ) { caseステートメントリスト } switch(month){
     case 2: days = evenyear? 29: 28; break;
     case 4:case 6:case9: days = 30; break;
     default: days = 31; break;
     }
Caseステートメントリストcaseステートメントリスト:
   caseステートメント
   caseステートメントリスト caseステートメント
Caseステートメントcaseステートメント:
   case 数値 : ステートメントリスト
   デフォルト : ステートメントリスト

変数宣言:

タイプ指定 識別子
タイプ指定 識別子 配列指標リスト
タイプ指定 識別子 = 代入

配列指標リスト:

[整数定数]
[整数定数]配列指標リスト

タイプ指定子:

浮動小数点タイプ
整数タイプ

浮動小数点タイプ:

float
float32
float64

整数タイプ:

int
int8
int16
int32
uInt8
uInt16
uInt32

非数字:次のうち1つ

_ a~z A~Z

数字:次のうち1つ

0 1 2 3 4 5 6 7 8 9

非ゼロ数字:次のうち1つ

1 2 3 4 5 6 7 8 9

バイナリ数字:次のうち1つ

0 1

8進数字:次のうち1つ

0 1 2 3 4 5 6 7

16進数字:次のうち1つ

0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F

識別子:

非数字 [非第1文字]

非第1文字:

非数字 [非第1文字]
数字 [非第1文字]

数値

整数定数
浮動小数定数

整数定数:

10進定数
バイナリ定数
8進定数
16進定数

10進定数:

非ゼロ数字 #数字

バイナリ定数:

0b #バイナリ数字
0B #バイナリ数字

8進定数:

0 #8進数字

16進定数:

0x #16進数字
0X #16進数字

浮動小数定数:

有理 指数部
10進定数 指数部

有理数:

#数字 . 数字 #数字

指数部:

e [符号] #数字
E [符号] #数字

符号:次のうち1つ

+ -

コメント:

//コメント
/* コメント*/



この記事は役に立ちましたか。

役に立たなかった