Lolcode-変数

他のプログラミング言語と同様に、LOLCODEではさまざまなタイプの変数を定義できます。この章では、LOLCODEでの変数の操作について説明します。

変数の範囲

変数のスコープは、関数またはプログラムブロックに対してローカルです。つまり、あるスコープで定義された変数を、同じプログラムの他のスコープで呼び出すことはできません。変数は、宣言された後でのみアクセスできます。

LOLCODEには変数のグローバルスコープがないことに注意してください。

命名規則

変数名は通常、識別子と呼ばれます。LOLCODEで変数に名前を付けるための規則のいくつかを次に示します-

  • 変数識別子は、すべて大文字または小文字(または2つの混合)にすることができます。

  • それらは文字でのみ開始でき、その後に他の文字、数字、およびアンダースコアを続けることができます。

  • LOLCODEでは、変数に名前を付ける際にスペース、ダッシュ、またはその他の記号を使用することはできません。

  • 変数識別子では大文字と小文字が区別されます。

LOLCODE-の変数の有効な名前と無効な名前の規則の一部を次に示します。

  • 名前は常にアルファベットで始まる必要があります。例えば、name, Name 有効です。

  • 変数の名前を数字で始めることはできません。例えば、2var 無効です。

  • 変数の名前を特殊文字で始めることはできません。

  • 変数には、開始インデックスを除いて、名前内の任意の場所に_または数字を含めることができます。例えば、name2_m は有効な名前です。

LOLCODEの有効な名前の例を以下に示します-

HAI 1.2
I HAS A food ITZ "111.00033"
I HAS A food2 ITZ "111"
I HAS A fo_od ITZ "1"
VISIBLE food
VISIBLE food2
VISIBLE fo_od
KTHXBYE

上記のコードのすべての宣言ステートメントは有効であり、実行すると次の出力が生成されます-

sh-4.3$ lci main.lo
111.00033
111
1

無効なステートメントのいくつかの例とその出力を以下に示します-

例1

HAI 1.2
I HAS A 2food ITZ "111.00033"
KTHXBYE

上記のコードを実行すると、次の出力が得られます-

sh-
4.3$ lci main.lo
Line 2: Expected: identifier; Got: int(2).

例2

HAI 1.2
I HAS A _food ITZ "111.00033"
KTHXBYE

上記のコードを実行すると、次の出力が得られます-

sh-
4.3$ lci main.lo
Line 2: Unrecognized sequence at: _food ITZ "111.00033".

例3

HAI 1.2
I HAS A f$ood ITZ "111.00033"
KTHXBYE

上記のコードを実行すると、次の出力が得られます-

sh-
4.3$ lci main.lo
Line 2: Unrecognized sequence at: $ood ITZ "111.00033".

変数の宣言と割り当て

declare変数であるLOLCODEは、キーワード「I HAS A」に続いて、変数名を提供します。変数を宣言するための構文を以下に示します。

I HAS A VAR BTW VAR is empty now, You can use any name instead of var

assign変数に同じステートメント内の値を指定すると、変数名の後に「ITZ」を付けて、割り当てる値を指定できます。次の構文を使用して、変数に値を割り当てます-

<variable> R <expression>

VAR R "Green"         BTW VAR is now a YARN and equals "Green"
VAR R 30              BTW VAR is now a NUMBR and equals 30

あなたもすることができます declare そして assign 次の構文を使用して同時に変数-

I HAS A VAR ITZ VALUE

I HAS A NAME ITS “TUTORIALS POINT”

HAI 1.2
BTW this is how we declare variables
I HAS A food
I HAS A bird

BTW this is how we assign variables
food R 1
bird R 5

BTW this is how initialize variables
I HAS A biz ITZ "OMG!"
VISIBLE food
VISIBLE biz
VISIBLE bird
KTHXBYE

上記のプログラムは、変数の宣言を示し、それらを出力します。出力は-

sh-
4.3$ lci main.lo
1
OMG!
5

型キャスト

ある型の値を別の型に変換するには、型キャストを使用します。NUMBARをNUMBRにキャストすると、浮動小数点数の小数部分が切り捨てられます。NUMBARをYARNにキャストすると(たとえば、印刷することにより)、出力はデフォルトの小数点以下2桁に切り捨てられます。

HAI 1.2
I HAS A food ITZ "111.00033"
VISIBLE food

BTW this is how we do type casting
MAEK food A NUMBAR
VISIBLE food
KTHXBYE

上記のコード行は、次の出力を生成します-

sh-4.3$ lci main.lo
111.00033
111.00033

LOLCODEプログラムで宣言されたすべての変数はローカル変数であり、この言語にはどの変数のグローバルスコープもありません。