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


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
0527
ペリドット配列の要素を移し替える2解決


ペリドット

リンク

2017/5/27(Sat) 15:25:17|NO.79996

配列の要素を別の配列の最後尾に移し、移動させた要素を消して要素をシフトさせる命令が作りたいです。

#deffunc xtox array arr,array toarr//指定配列の第一要素をtoの配列に移動(移動元は削除、詰める) dim arrdash,length(arr)-1 arr(0)=toarr(length(toarr)) foreach arrdash arrdash(cnt)=arr(cnt+1) loop arr=arrdash return
これでできると思ったのですが、「配列の要素が無効です」というエラーがでてしまいます。
どうすればエラーを解決できますか?



この記事に返信する


tds12

リンク

2017/5/27(Sat) 16:01:53|NO.79998

lengthは最大の要素番号より1つ大きい整数を返します。
(0),(1),(2)とあれば3が返ります。
エラーの原因はこれですがそこを修正しても正しく動作しない気がします。

arr=arrdashとしてもarrがarrdashになることはありません。
arrayはポインタではなく
arrはarr(0)を意味し、
arr(0)=arrdash(0)をしているだけとなります。



ペリドット

リンク

2017/5/28(Sun) 21:17:31|NO.80025

そういうことだったんですね。
ありがとうございます。



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