HSP備忘録
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━1.HSPでは、サブルーチンで受け取った文字列は読み取り専用
#module
#deffunc test str a
a = "sss" ; error 23 「変数名が指定されていません」
return
#globalsdim moji, 256
moji = "string"
test moji
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2.#defineは #define globalとしないと、サブルーチンに適用されない#define DEBUG_
#module
#deffunc test
#ifdef DEBUG_
title "デバッグ" ; ←実行されない
#endif
return
#globaltest
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
3.文字列でも配列になっているものは arrayで引数にしないと駄目#module
#deffunc test str aaa
title aaa(1) ; error(4) システムエラーが発生しました
return#global
sdim moji, 100, 3
moji(0) = "りんご"
moji(1) = "いちご"
moji(2) = "かぼちゃ"test moji
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
4.サブルーチンの後の定義は無効#enum global DEF1 = 0
#enum global DEF2#module
#deffunc test
title ""+ DEF5 ; 0と表示されてしまう
return#global
#enum global DEF3 = 0
#enum global DEF4
#enum global DEF5test
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
一番つらいのは、4.
ファイルが増えてきて、#include をすると、
違うファイルにある定義が使えなくなったりする。