- WSOFT Docs
- ブログ
- 共同作成ガイド
-
製品
- 製品
- PCMX
- WSOFTアカウント
- AliceScript
- AliceScript
- 謝辞
- ダウンロード
- Alice(キャラクター)
- AliceScriptのツアー
- Wikiの概要
- APIブラウザー
- APIブラウザー
- Alice
- break
- continue
- delay
- do
- exit
- for
- foreach
- function
- if
- import
- include
- lock
- read
- return
- string_format
- switch
- using
- while
- write
- Diagnostics
- Environment
- env_clr_version
- env_commandLine
- env_commandLineArgs
- env_set_exitCode
- env_expand_environmentVariables
- env_get_environmentVariable
- env_hasShutdownStarted
- env_impl_architecture
- env_impl_location
- env_impl_name
- env_impl_target
- env_impl_version
- env_Is64BitOperatingSystem
- env_Is64BitProcess
- env_MachineName
- env_NewLine
- env_os_platform
- env_os_version
- env_set_environmentVariable
- Exception
- Interpreter
- gc_collect
- gc_collectAfterExecute
- gc_getTotalMemory
- interpreter_append_output
- interpreter_append_output
- interpreter_consts
- interpreter_namespaces
- interpreter_getVariable
- interpreter_globalVariables
- interpreter_name
- interpreter_nameexists
- interpreter_namespaces
- interpreter_process
- interpreter_processfile
- interpreter_reset_variables
- Type
- Math
- math_abs
- math_acos
- math_acosh
- math_atan
- math_atan2
- math_atanh
- math_bitdecrement
- math_bitincrement
- math_cbrt
- math_celling
- math_clamp
- math_copysign
- math_cos
- math_cosh
- math_e
- math_exp
- math_factorial
- math_floor
- math_fusedmultiplyadd
- math_isFinite
- math_isInfinity
- math_isNaN
- math_isNegativeInfinity
- math_isNormal
- math_isPositiveInfinity
- math_isprime
- math_isSubNormal
- math_max
- math_min
- math_pi
- math_pow
- math_round
- math_sin
- math_sinh
- math_sqrt
- math_tan
- math_tanh
- math_tau
- math_truncate
- Net
- Parsing
- Random
- Security
- Threading
- Array
- Bool
- Bytes
- Delegate
- None
- Number
- String
- string
- CompareTo
- Contains
- EndsWith
- Equals
- Format
- GetBytes
- Indent
- IndexOf
- Insert
- IsEmptyOrNull
- IsEmptyOrWhiteSpace
- IsNormalized
- Join
- LastIndexOf
- Normalize
- PadCenter
- PadLeft
- PadRight
- Remove
- RemoveAt
- Repeat
- Replace
- ReplaceLineEndings
- Split
- SplitLines
- StartsWith
- SubString
- ToLower
- ToLowerInvariant
- ToUpper
- ToUpperInvariant
- Trim
- Trim
- TrimStart
- Variable
- 変更履歴
- 例外
- 例外
- 0x000 NONE
- 0x001 COULDNT_FIND_FUNCTION
- 0x003 INVALID_OPERAND
- 0x004 COULDNT_FIND_VARIABLE
- 0x005 ITS_RESERVED_NAME
- 0x006 ILLEGAL_IDENTIFIER
- 0x009 INCOMPLETE_ARGUMENTS
- 0x01a COULDNT_ADD_PARAMETERS_AFTER_PARMS_KEYWORD
- 0x020 COULDNT_EXECUTE_BLOCK
- 0x021 NEED_BRACKETS
- 0x022 UNNEED_TO_BRACKETS
- 0x04a CASE_BLOCK_MISSING_BREAK
- 0x04b UNKNOWN_ESCAPE_CHAR
- 基本
- Alice in Discord
- 相互運用
- チュートリアル
- ダウンロードセンター
- ほめて.ws
- アイコンメーカー
- WSOFTScript
- Unidet
- WebSailing
- WSNET
- WSTodon
- WSTube
- Lantana
- 法的資料
-
あみうは
- あみうは
- 新学期が始まりました!
- 恋の相談
- プチコン3号で作ったのは?
- オススメの文庫
- マクドナルド最高!
- ios11β レビュー
- あみうはの歌について
- ついに自分のソフトウェアのホームページができました。
- Windowsタブレットをリセットして起動しなくなった人のために
- PCレスで YouTubeの曲を携帯mp3プレイヤーで聴く(iPhone)
- 食べられないラズベリーパイを買いました。(1)
- ラズベリーパイの下ごしらえ(2)
- 小説始めます~
- 女子がキュンとくる行動ベスト3!!
- MacとWindowsについてあまり知られていない事
- macでできる裏技
- ドコモの格安スマホ「MONO」買っちゃいました☆いい所をいくつか
- 『レビュー』iPhone6sを1年間使い続けて思ったこと
- iPhoneの拡大鏡に関するバクを発見しました。
- iPhoneで圧縮ファイルを作成したり解凍する方法
- Obscura2が今だけ無料!使い方まとめ
- Windowsタブレットがブルースクリーンになった時のメモ
- お知らせ
文
この記事では、AliceScriptにおける文と、基本構文について説明します。
プログラムが実行する処理は、文として表されます。 一般的な文には、変数の宣言や値の代入、関数の呼び出し、ループ処理、条件分岐などがありますが、これがすべてではありません。 プログラム内で文が実行される順序は、フローと呼ばれます。フローは通常上から下へと進みますが、これから説明する構文によって、実行するたびに変わる可能性があります。
文は、セミコロン(;
)で終わる一行のコードか、1つのブロックを形成する一連のコードで構成されます。文は波かっこ({}
)で囲み、入れ子にできます。
たとえば、次の例は、2つの文を入れ子にしています。
文の種類
AliceScriptの文は、次のように分類できます。
- 宣言文
- 式
- 条件分岐文
- 反復文
- ジャンプ文
- 例外処理文
lock
文- 空の文
宣言文
宣言文は、新しい変数または定数を定義します。宣言文では常に値の代入が必要です。
次の例では、値を指定して変数と定数を宣言しています。
変数に定義や定義済みの変数に代入する方法については、変数を参照してください。
using
宣言文を使用すると、その型の完全修飾名を使用せずに、現在のスクリプトで名前空間で定義された関数やクラスを使用できます。詳細については、usingを参照してください。
次の例では、現在のスクリプトにAlice.IO
への参照を追加しています。
式
式は、関数を呼び出して値を計算したり、変数に値を格納したりします。 詳細については、式を参照してください。
次の例では、演算、変数への値の代入と関数の呼び出しを行っています。
条件分岐文
条件分岐文を使用すると、ある条件に応じて、コードの実行場所を分岐できます。詳細については、次の項目を参照してください。
次の例では、fizzBuzz
関数に与えられた値が15
の倍数であるときにFizzBuzz
を表示し、3
の倍数であるときはFizz
を表示し、さらに5
の倍数であるときにはBuzz
を表示しそれ以外の場合はその数を表示します。
function fizzBuzz(number num)
{
if(num % 15 == 0)
{
print("FizzBuzz");
}
else if(num % 3 == 0)
{
print("Fizz");
}
else if(num % 5 == 0)
{
print("Buzz");
}
else
{
print(num);
}
}
fizzBuzz(3);//出力例:Fizz
fizzBuzz(5);//出力例:Buzz
fizzBuzz(14);//出力例:14
fizzBuzz(15);//出力例:FizzBuzz
反復文
反復文を使用すると、配列をループ処理したり、指定された条件が満たされるまで同じ文を繰り返し実行したりできます。詳細については、次の項目を参照してください。
次の例では、for
文を使用して、0
から2
までをカウントしています。
ジャンプ文
ジャンプ文は、別の場所に制御を移動させます。詳細については、次の項目を参照してください。
次の例では、引数が3
以上であった場合には、Hello,World
を表示しません。
例外処理文
例外処理文を使用すると、実行時に発生するエラーや例外状態から適切に回復できます。詳細については、次の項目を参照してください。
- throw
- try
lock文
lock
文を使用すると、一度に1つのスレッドしかコードにアクセスしないように制限できます。
詳細については、lockを参照してください。
次の例では、10秒間の間、メインスレッドでitem
に2
を代入することができません。
using Alice.Threading;
var item = 0;
task_run(delegate(){
item = 1;
delay(10000);
});
item = 2;
print(item);
空の文
空の文は、{...}
または(...)
のように関数名を使用せずにかっこで囲むか、block
文を使用すると、空の文になります。この文はなにも実行しませんが、ブロックスコープを作成する目的などで使用できます。
次の例では、ブロックスコープを使って変数にアクセスできる場所を制限しています。