PrivateSubinsert2_Click()
DimaAsLong
DimbAsLong
a=CLng(InputBox("输入要删除的一个数据","输入数据"))
b=CLng(InputBox("输入该数据的位置","位置"))
Setpointer=head
Ifb=1Then
Setn=Newnode
n.x=a
Setn.nextnode=Nothing
Do
Setpointer=pointer.nextnode
IfObjPtr(pointer.nextnode)=ObjPtr(head)Then
Setpointer.nextnode=n
Setn.nextnode=head
Sethead=n
ExitDo
EndIf
LoopWhileNotpointerIsNothing
Setpointer=head
counts=1
pointer.count=1
Do
counts=counts1
Setpointer=pointer.nextnode
pointer.count=counts
IfObjPtr(pointer.nextnode)=ObjPtr(head)Then
ExitDo
EndIf
LoopWhileNotpointerIsNothing
Else
Setn=Newnode
n.x=a
Setn.nextnode=Nothing
Whilepointer.count<>b
Settemp=Newnode
Settemp=pointer
Setpointer=pointer.nextnode
DoEvents
Wend
Setn.nextnode=pointer
Settemp.nextnode=n
Setpointer=n
Setpointer=head
counts=1
pointer.count=counts
Do
counts=counts1
Setpointer=pointer.nextnode 财软,联盟,fs119.net
pointer.count=counts
IfObjPtr(pointer.nextnode)=ObjPtr(head)Then
ExitDo
EndIf
LoopWhileNotpointerIsNothing
EndIf
EndSub
PrivateSubkonglianbiao_Click()
Setpointer=head
Do
Setpointer=pointer.nextnode
IfObjPtr(pointer.nextnode)=ObjPtr(head)Then
Setpointer.nextnode=Nothing
Setn=Newnode
Setn=pointer
EndIf
DoEvents
LoopWhileNotpointer.nextnodeIsNothing
Do
Setpointer=head
Sethead=head.nextnode
Setpointer=Nothing
IfObjPtr(head)=ObjPtr(n)Then
Sethead=Nothing
Setn=Nothing
EndIf
DoEvents
LoopWhileNotheadIsNothing
Form1.Cls
EndSub
PrivateSubleave_Click()
End
EndSub
PrivateSubprint_Click()
Setpointer=head
IfheadIsNothingThen
MsgBox"链表为空"
Else
WhileNotpointerIsNothing
Printpointer.x
Setpointer=pointer.nextnode
IfObjPtr(pointer)=ObjPtr(head)Then´objptr返回对象的地址
ExitSub´strptr返回变长字符串的字符串数据地址
EndIf´varptr返回变量的地址
DoEvents´用与获取变量地址,是函数。
Wend
EndIf
EndSub
该代码在VB6.0WINME中调试通过。
Google.cn搜索相关文章:
谷歌中搜索全球网 循环链表以及相关操作(VB实现)
百度中搜索 循环链表以及相关操作(VB实现)
谷歌中搜索www.fs119.net 循环链表以及相关操作(VB实现)
下一篇:程序只运行一个实例,并且把前一个激活