GTA SA Modification Center > Pawn > Construction

Construction

構文(条件){処理} の形です。
基本的には文が一つなら{}は省略する事ができます。

Switch

if

条件分岐をします。条件が真なら括弧の中の処理を実行します。
閉じ括弧の後に else をつけることで例外処理も記述できます。

if(x >; 0)
{
 print("xは正です。");
} else
if(x < 0)
{
 print("xは負です。");
} else
{
 print("xは0です。");
}
switch case

条件分岐をします。switchとcaseが一致したら処理をします。
defaultを記述する事で例外処理もできます。

switch(x % 12)
{
 case 0:
 {
  print("Xは12の倍数です。");
 }
 case 6:
 {
  print("Xは6の倍数です。");
 }
 case 4, 8:
 {
  print("Xは4の倍数です。");
 }
 case 3, 9:
 {
  print("Xは3の倍数です。");
 }
 case 2, 10:
 {
  print("Xは2の倍数です。");
 }
 default:
 {
  print("Xは1の倍数です。");
 }
}

Loop

while

繰り返しをします。条件が真の間、繰り返されます。
条件はループの処理が始まる前に評価されます。
条件に1等を指定して無限ループを起こさないようにしてください。

while(1) //無限ループ 危険!
{
 print("loop"); //loop が無限に出力される
}
do while

繰り返しをします。条件が真の間、繰り返されます。
条件はループの処理が終わった後に評価されます。
whileと似ていますが、条件を評価するときが違います。
; を忘れないようにしてください。

new x = 0;
do
{
 printf("loop: %d\n", x); //loop: 0 ~ loop: 20 が出力される
 x++;
} while(x < 20);
for

繰り返しをします。()の中には(初期化;条件;処理)を書きます。
条件が真の間、繰り返されます。条件はループの処理が始まる前に評価されます。
初期化でnewを使う事もできます。ここで定義した変数は全てのループ終了時に破棄されます。
当然ループの中で初期化した変数を扱う事もできます。

for(new i = 0; i < 20; i++)
{
 printf("loop: %d\n", i); //loop: 0 ~ loop: 19 が出力される
}

Break

break

最も内側のwhile, do while, forループを抜けます。

for(new i = 0; i < 20; i++)
{
 printf("loop: %d\n", i); //loop: 0 ~ loop: 10 が出力される
 if(i == 10)
 {
  break; //iが10のときに抜ける
 }
}

Continue

continue

最も内側のwhile, do while, forループの処理を飛ばし、次の処理に進みます。

for(new i = 0; i < 20; i++)
{
 if(i == 10)
 {
  continue; //iが10のときに飛ばす
 }
 printf("loop: %d\n", i); //loop: 0 ~ loop: 9, loop: 11 ~ loop: 19 が出力される
}