ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年3月28日(木) 18:09

全ての表示時間は UTC+09:00 です




新しいトピックを投稿する  トピックへ返信する  [ 2 件の記事 ] 
作成者 メッセージ
投稿記事Posted: 2006年4月06日(木) 21:26 
オフライン
Site Admin

登録日時: 2005年5月30日(月) 15:08
記事: 535
質問版で気づき辛い問題を発見された方がおりましたので、私のほうから詳細をご報告させていただきます。

コード:
Dim i=1 As Byte,k[1] As Byte
k[Command()]++
debug

Function Command() As Byte
Command=i
If i>0 Then i=0
End Function
このようなコードを実行すると、Command関数が2回呼び出されてしまう問題について、修正を行います。

n++

通常は上記のようなコードは、

n=n+1

と同等の意味を持ちますが、今回の問題に関しては、

k[Command()]++

k[Command()]=k[Command()]+1

は等しいとはいえません。プログラムの表記通り、配列要素の参照が一度しか記述されておりませんので、呼び出し回数も一度で済むように改良を行おうと思います。


通報する
ページトップ
投稿記事Posted: 2006年4月12日(水) 20:36 
自分が発見したインクリメントによるバグ(?)が修正されたのは、ありがとうございます。

ただ、修正後のABにおいて文字列インクリメント
コード:
Dim S As String
S+="a"
を記述すると、内部エラーと表示されます。

報告ということで・・後はお任せします。


通報する
ページトップ
   
期間内表示:  ソート  
新しいトピックを投稿する  トピックへ返信する  [ 2 件の記事 ] 

全ての表示時間は UTC+09:00 です


オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[9人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by ocean