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


HSPTV!掲示板


未解決 解決 停止 削除要請

2008
0718
船丸次の行に続けて命令のパラメーターを書くのには?9解決


船丸

リンク

2008/7/18(Fri) 22:09:20|NO.17389

次の行に続けて命令のパラメーターを書くのにはどうすれば良いのでしょうか。
例えば、

// 例。起動しても何にもなりません boxf a+a*2*4+a , a+a*2*4+a a+a*2*4+a+100 , a+a*2*4+a+100 // こうしたい
この様に出来ないのでしょうか。

なぜこうしたいかと言うと、他の変数に入れてパラメーターを少なくすれば良い話なのですけど、
少しでも容量削減&見やすくしたいのです。



この記事に返信する


ANTARES

リンク

2008/7/19(Sat) 00:45:44|NO.17399

>boxf a+a*2*4+a , a+a*2*4+a
> a+a*2*4+a+100 , a+a*2*4+a+100 // こうしたい
tmp=a+a*2*4+a
boxf tmp, tmp, tmp+100, tmp+100

 この方がわかりやすいし、ソース容量は減るし、
速度は速くなるし、いいことずくめだと思いますが?
「少しでも容量削減」って、同じ計算を4回もやる無駄は
気にならないのですか?



Quiet

リンク

2008/7/19(Sat) 00:52:37|NO.17401

いや、多分HSPTV部門でのプログラムでしょう。
僕も仕上げはよくそうしますから。
(変数を使うとその分容量は増えます。)

>次の行に続けて命令のパラメーターを書く

ステートメントとして一行にまとめたほうが絶対使いやすいです。



ANTARES

リンク

2008/7/19(Sat) 01:45:01|NO.17403

>いや、多分HSPTV部門でのプログラムでしょう。
>僕も仕上げはよくそうしますから。
>(変数を使うとその分容量は増えます。)
 start.axの容量ですよね?

A

a=10 boxf a+a*2*4+a , a+a*2*4+a , a+a*2*4+a+100 , a+a*2*4+a+100
B

a=10 tmp=a+a*2*4+a boxf tmp , tmp , tmp+100 , tmp+100
Aから作成したstart.axの容量:290バイト
Bから作成したstart.axの容量:206バイト



p

リンク

2008/7/19(Sat) 09:08:07|NO.17404

a+a*2*4+a = 10*aなんだから、事前に計算可能なところは、計算しておくべき。
まあ小学生なら、まだ習ってないだろうから知らなくて仕方ないけど。

C

a = 10 boxf 10*a, 10*a, 10*a+100, 10*a+100

D

a = 10 tmp = 10*a boxf tmp, tmp, tmp+100, tmp+100

Cから作成したstart.axの容量194バイト
Dから作成したstart.axの容量182バイト



knock2

リンク

2008/7/19(Sat) 12:03:37|NO.17410

効率とか見易さ云々は別としてやりたいことは2行にまたがる命令の書き方ですよね。
#define の中なら\で改行できます。


#define box boxf a+a*2*4+a , a+a*2*4+a ,\ a+a*2*4+a+100 , a+a*2*4+a+100 // こうしたい a=10 box



船丸

リンク

2008/7/19(Sat) 12:22:07|NO.17411

一番上は例なので気にしないで下さい。
何とか解決しましたが、本当はすごい複雑です。

boxf box_x-cnt*kakur+wakusize_2 , box_y-cnt*kakur+wakusize_2 , box_x+boxsizex+cnt*kakur-wakusize_2 , box_y+boxsizey+cnt*kakur-wakusize_2
の様に。



船丸

リンク

2008/7/19(Sat) 12:22:28|NO.17412

チェック忘れました。



船丸

リンク

2008/7/19(Sat) 12:23:44|NO.17414

あと、HSPTVでは無く普通の部門です。
みんなにとって少しでもデータが軽い方が良いですよね。



ash

リンク

2008/7/19(Sat) 13:11:08|NO.17416

ソースをよく見てください、複雑ではありません.

k=cnt*kakur-wakusize_2 boxf box_x-k , box_y-k , box_x+k+boxsizex, box_y+k+boxsizey



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