アプリ版:「スタンプのみでお礼する」機能のリリースについて

教えてください.
C言語での
quick_sort(int a[],int l,int r)
{
   …
   quick_sort(a,l,v-1);
}
のようにBasicでも関数内で同じ関数を使うことはできますか?
また,使用方法はC言語のそれと同じように使えばよいでしょうか?

A 回答 (2件)

お疲れ様です。



Visual Basicでも再帰呼び出しは可能です。
やり方はC言語とはあまり変わらないと思います。

例)

Private Sub Form_Load()
  
  Dim StrArray(1 To 5) As String
  
  Call SetCount(StrArray, LBound(StrArray))
  
End Sub

Private Sub SetCount(ByRef StrArray() As String, ByVal i)

  StrArray(i) = i
  
  If i < UBound(StrArray) Then
    
    Call SetCount(StrArray, i + 1)
    
  End If
  
End Sub

あまり深くまでネストするとスタック領域が不足してエラーになりますのでご注意を。

間違っていたらごめんなさい。
    • good
    • 0
この回答へのお礼

ありがとうございました.
ためしてみます.

お礼日時:2002/04/25 08:54

 Visual Basicにクイックソートはありません。


 また、他のソートする関数もありません。
 自分で作りましょう。
 アルゴリズムがわかっていれば C言語と同様に書けます。
 VBのバージョンがわかりませんが、たしか VB5からだったと思うのですが再帰処理が可能なのでクイックソートもそのまま書けるはずです。
    • good
    • 0
この回答へのお礼

ありがとうございました.

お礼日時:2002/04/25 08:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!