数値からコンパイル制御
#if 数値式
コンパイルのON/OFFを指定します。 #ifは指定した数値が 0ならば以降のコンパイル出力をOFFにしてコンパイル結果を無視します(プログラムとして実行されません)。 数値が0以外の場合は、出力がONとなります。 このコンパイル制御は、#endifが出るまでの区間を対象にします。 #if、#ifdef、#ifndefのいずれかには、#endifがペアで存在している必要があります。 例 : #if 0 mes "ABC" ; この部分は無視されます a=111 ; この部分は無視されます mes "DEF" ; この部分は無視されます #endif #ifの指定には式を使うことも可能なので、 例 : #define VER 5 #if VER<3 mes "ABC" ; この部分は無視されます a=111 ; この部分は無視されます mes "DEF" ; この部分は無視されます #endif のような使い方もできます。計算式の記述および演算子の注意点などは、#const命令と同様です。 また、#if~#endifのプロックを入れ子にすることも可能です。 例 : #ifdef SW #ifdef SW2 mes "AAA" ; SWとSW2が定義されている場合 #else mes "BBB" ; SWが定義されている場合 #endif #endif 基本的にCやC++のプリプロセッサに近い使い方ができるようになっています。 プリプロセッサは、通常のコンパイルで自動的に適用されます。
#else | コンパイル制御を反転 |
#endif | コンパイル制御ブロック終了 |
#ifdef | マクロ定義からコンパイル制御 |
#ifndef | マクロ定義からコンパイル制御2 |
#define | 新規マクロを登録する |
#const | マクロ名の定数定義 |
バージョン | 3.5 |
作成日 | 2017/09/13 |
著作者 | onitama |
URL | http://hsp.tv/ |
備考 | ver3.5標準命令 |
タイプ | 内蔵命令 |
グループ | プリプロセッサ命令 |
対応環境 |
|
hs ファイル | hsphelp\i_prep.hs |