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


HSPTV!掲示板


未解決 解決 停止 削除要請

2013
0530
W変数定義(sdim、dim)のやり方6解決


W

リンク

2013/5/30(Thu) 10:44:47|NO.54417

sdim value
value = ""

dim value
value = 0

上のような場合、変数定義は sdim や dim を使った方がよいのでしょうか。?
その理由も知りたいのですが...。



この記事に返信する


check

リンク

2013/5/30(Thu) 10:54:05|NO.54418

配列変数を使わないのであれば、上記のように定義する必要はない。
dim, sdimは配列変数(とバッファ)を定義するためのものだ。



菊岡万次郎

リンク

2013/5/30(Thu) 13:04:35|NO.54421

HSPは変数宣言がいらないらしいですよ!
C言語だといるらしい・・・(;・∀・)

dimとsdimっていうのはどうやら配列を作るのに使うらしいです!
作ってない部分の配列を見るとエラー出るからそうならないように使うとか



ht.

リンク

2013/5/30(Thu) 20:25:29|NO.54435

dim・sdim系は一切使わずとも配列でもなんでも使用できますが、そのまま配列に要素を追加しようとすると
逐一配列に必要なメモリの再確保が起きるので、多くの要素を頻繁に追加する場合には効率的ではありません。
この都合は単なる文字列変数についても同様で、最初は64byte分の文字列が格納できるようになっています。
こういうメモリはちょびちょび確保するよりも予め使われそうな分だけ一気に確保しておく方が高速なものなのです。

よって、使い時は以下のようになります。
sdim … 64byte以上の文字列を頻繁に出し入れするとき
dim … 数値型の配列変数を使用するとき



W

リンク

2013/5/30(Thu) 21:44:29|NO.54441

みなさん、ありがとうございます。

つまり、

 配列を使用しない場合、dim や sdim を使う必要はない。
 valu = 0 や value = "" で事足りる。

との見解でよろしいのでしょうか。?



ht.

リンク

2013/5/31(Fri) 00:58:09|NO.54447

それで差し支えありませんよ。



W

リンク

2013/5/31(Fri) 22:22:12|NO.54458

ありがとうございます。

サンプルなど見ていたところ、文字列を sdim で定義されていることが
多かったように思いましたので、ふとした疑問でした。



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