vb中数组的初始化
问题:
计划使用数组存储以下值:
"零分,班序,年名,序,组名,级名,总分3,总分5,总分9,总序,语序,数序,英序,物序,化序,政序,历序,地序,生序"
方法:
在vb中数组初始化比较麻烦
1.标准做法:
dimfield(19)asstring'需要手工计算下标上限 field(0)="零分"'逐行赋值 field(1)="班序" ... field(18)="生序" fori=0to19 debug.printfield(i) nexti
很�嗦,一句一行赋值语句.
2.改进一下:
DimsFieldListAsString DimsField(1to19)AsString'需要手工计算下标上限 DimiAsInteger DimnBgnAsInteger,nLenAsInteger '注意尾部有',不可省略 sFieldList="零分,生序," nBgn=1 Fori=1To19 nLen=InStr(nBgn,sFieldList,",") sField(i)=Mid(sFieldList,nBgn,nLen-nBgn) nBgn=nLen+1 debug.printsField(i) nexti
上例将一个由","分隔的字符串构造出数组.
3.再改进一下:
DimsFieldListAsString DimsField()AsString'动态数组 DimiAsInteger '注意尾部',可有可无 sFieldList="零分," sField=Split(sFieldList,") Fori=0ToUBound(sField)-1 debug.printsField(i) nexti
上例使用一个split函数构造出数组.
结论: