📄 arrayi.pb
字号:
;//////////////////////////////////
; Amlinger
; by 2008 02 11
;描述:一维数组
;目标:指针的声明及使用
;//////////////////////////////////
;long 数组
Dim longArray.l(10)
;定长字符组
#StrArrayLength=11
Dim StrArray.s{1}(#StrArrayLength)
;输入起始地址
Debug @longArray()
Debug @longArray(0)
Debug @longArray(5)
;定长字符组初始化
StrArray(0)="H"
StrArray(1)="E"
StrArray(2)="L"
StrArray(3)="L"
StrArray(4)="O"
StrArray(5)=" "
StrArray(6)="W"
StrArray(7)="O"
StrArray(8)="R"
StrArray(9)="L"
StrArray(10)="D"
;输出定长字符组的内容
;不知道 PureBasic 有没有办法测量 数组大小的函数
;可能我还没有找到,大家那个要是找到了也教教我.
;
For i=0 To #StrArrayLength
Debug StrArray(i)
Next i
;使用PureBasic 动态列表类
NewList Liste.l()
;嘿嘿有一个新发现 ":" 就是这个冒号了
;是多目运算呢,还是像c一样用 ";" 分号来分隔句子
;有在帮助文件中看到相关字样的,也请告诉我一声
;追加一个元素,并设置它的值 ;
;注:赋值一定要在,下一个追加命令之前 处理
;否则就会将值赋到新追加的元素中
;试验:
;当然也可以试试数组赋值法来对之前的元素进行赋值
;Liste(0)=1
;实际证明是不可行的
;嘿嘿还好 PureBasic有为我们提供定位的指令...
;定位到 0元素
;SelectElement(mylist(), 0)
AddElement(Liste()): Liste() = 1
AddElement(Liste()): Liste() = 2
AddElement(Liste()): Liste() = 3
SelectElement(Liste(), 0)
;将原来的1 改为12
Liste()=12
;移动内部指针到第一个元素的位置
FirstElement(Liste())
;输出第一个元素的值 这里当然是 12 了
Debug Liste()
;保存当前指
Element.l = @Liste() ; Pointer speichern
;再次重定位到开头....
;(-&-)! 那位英文好的给加个注解
;FirstElement 和 ResetList 有什么区别
ResetList(Liste())
;移动到下一个元素
While NextElement(Liste())
;输出元素值
Debug Liste()
Wend
;上面卖了一个小关子.
;这里做一个解释吧 关于 FirstElement 和 ResetList 有什么区别
; 虽然两个函数的结果都是相同的,作用都是将指定元素表,定位到开头
; 不同之处是 FirstElement 有返回值 可以用于判断是否为一个空的列表
; ResetList 是没有返回值的 只是将指针定位到开头
;还原到之前未操作这前的状态
ChangeCurrentElement(Liste(), Element)
;输出第一个元素
Debug Liste()
; IDE Options = PureBasic 4.10 (Windows - x86)
; CursorPosition = 4
; Folding = -
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -