0
 Public Function insert(x As Integer)
    If front = 0& & rear = n - 1 Or rear + 1 = front Then
     MsgBox "queue FULL !!!", vbOKOnly, "QUEUE"
    ElseIf front = -1 Then
     front = rear = 0
    ElseIf rear = n - 1 Then
     rear = 0
    Else
     rear = rear + 1
    End If
    arr(rear) = x
    MsgBox x, vbOKOnly, "INSERTED"
    List1.AddItem x
End Function

これは循環キューのinsert()です。「フロント=0&リア=n-1またはリア+1=フロントの場合」
エラーが「ランタイムエラー「13」タイプの不一致」です。

4

2 に答える 2

1

私はあなたが意味したと思います

If front = 0& & rear = n - 1 Or rear + 1 = front Then

することが

 If front = 0 And rear = n - 1 Or rear + 1 = front Then

そしてあなたはおそらく本当に意味しました

If (front = 0 And rear = n - 1) Or rear + 1 = front Then

「x」と「n」を混ぜていますか

于 2012-05-11T16:02:34.443 に答える
0

これも間違っています

front = rear = 0 

する必要があります

front = 0 
rear = 0 

=VB6では2つの意味があります

  • ===cのような言語と同じように、等式演算子です
  • ==cのような言語の演算子のように、代入ステートメントでもあります
于 2012-05-12T08:00:16.307 に答える