HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2021
1121
異なる型を持つ配列変数Zako21未解決


異なる型を持つ配列変数

リンク

2021/11/21(Sun) 16:48:23|NO.94427

異なる型を持つ配列変数に代入しました(Error:31)

id=objID
radioSize(id) = rS BW(id) = rBW Wak(id) = radioSize(id)/1.01 ax(id)=int(ginfo(22)) ay(id)=int(ginfo(23)) radioX(id)=ax(id)+radioSize(id) radioY(id)=ay(id)+radioSize(id)
ここで必ずエラーが起きるのですが、どうすれば良いでしょうか



この記事に返信する


沢渡

リンク

2021/11/21(Sun) 17:30:51|NO.94428

そのコードを実行してもエラーは発生しませんが?
端折っている部分に問題がありそうな気がします。
とりあえず、以下の点に気をつけていただければ。

・整数配列(dimで初期化した配列)に実数を代入しようとしたり、実数配列(ddimで初期化した配列)に
整数を代入しようとしたりすると、エラー31が発生します。

//エラーが発生する例1(整数配列に実数を代入) dim a,4 a(1)=1.0 //エラーが発生する例2(実数配列に整数を代入) ddim a,4 a(1)=1

・上記の例において配列の要素に0を指定した場合だとエラーにはならないが、
 初期化した配列が勝手に型変換されて、配列ではない単独の変数になってしまいます。

dim a,4 a(0)=1.0 mes a(0) //aは実数変数になってしまったので、1.000000と表示される //mes a(1) //←これを実行すると「配列の要素が無効です」エラーになる

・整数と実数が混在する計算をした場合、計算する最初の項に合わせて後の項が型変換されます。

mes 3/1.4 //計算結果は3 mes 3.3/2 //計算結果は1.65



ONION software Copyright 1997-2023(c) All rights reserved.