我的代码是这样的:
n:=0;
j:=0;
m:=0;
for m:=0 to (LB-1) do //LB是动态数组FieldB2的长度
begin
for i:=1 to FieldLengthA do
begin
FS[m,j]:=MidStr(FieldB2[n],1,i);
showmessage(FS[m,j]);
j:=j+1;
end;//第二个For的End
n:=n+1;
end;//第一个For的End
其中FieldB2是一个基类型为string的一维动态数组,FS是基类型为string的二维的动态数组;程序的作用是从动态数组FieldB2的每一个元素中依次取1到FieldLengthA长度的字符(串)放到FS中,这样m和n是同时变化的。
我的问题就出在如果FS[m,j]:=MidStr(FieldB2[n],1,i);中的m和n分别是0,1或者2 这样的常数时,程序没有错误;但是一旦用m和n来做循环,就出现违法访问的错误。实在被这个东西搞得焦头烂额,望各位高手不吝赐教!
如果有不用指针的更好地解决这个问题的方法,也请一并告知。
n:=0;
j:=0;
m:=0;
for m:=0 to (LB-1) do //LB是动态数组FieldB2的长度
begin
for i:=1 to FieldLengthA do
begin
FS[m,j]:=MidStr(FieldB2[n],1,i);
showmessage(FS[m,j]);
j:=j+1;
end;//第二个For的End
n:=n+1;
end;//第一个For的End
其中FieldB2是一个基类型为string的一维动态数组,FS是基类型为string的二维的动态数组;程序的作用是从动态数组FieldB2的每一个元素中依次取1到FieldLengthA长度的字符(串)放到FS中,这样m和n是同时变化的。
我的问题就出在如果FS[m,j]:=MidStr(FieldB2[n],1,i);中的m和n分别是0,1或者2 这样的常数时,程序没有错误;但是一旦用m和n来做循环,就出现违法访问的错误。实在被这个东西搞得焦头烂额,望各位高手不吝赐教!
如果有不用指针的更好地解决这个问题的方法,也请一并告知。
解决方案 »
- DBGRID怎么样添加日期控件
- WORD插件问题,大家近来看看.
- 【急】兄弟们帮忙啊,一个非常简单的CGI或Websnap连接Interbase的数据库应用在调试环境下可以运行,在IIS下运行就报连接数据库错。重分!
- 在开一贴送分, 只要告诉明白我就行
- 如何用最简单的方法!把两个数据库内的表进行比较然后把不同的插入即可!
- 不会不要来
- ADO连接SQL SERVER,我想显示所有局域网内的SQL服务器,请大家帮忙。
- 紧急求救!关于delphi的控件
- "Destination := Source" 与 "Destination.Assign(Source)"的区别
- 怎样实现目录权限的更改?
- 如何从SQL Server2000数据库中选择一个表,保存为Access数据库
- 关于进销存的一些问题,大家都进来看看。。。
begin
for i:=1 to FieldLengthA do
begin
FS[m,i-1]:=MidStr(FieldB2[n],1,i);
showmessage(FS[m,j]);
end;//第二个For的End
n:=n+1;
end;//第一个For的End————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————
begin
for i:=1 to FieldLengthA do
begin
FS[m,i-1]:=MidStr(FieldB2[n],1,i);
showmessage(FS[m,j]);
end;//第二个For的End
n:=n+1;
end;//第一个For的End
n:=0;
j:=0;
m:=0;
for m:=0 to (LB-1) do
begin
j := 0;//这里加一句
for i:=1 to FieldLengthA do
begin
FS[m,j]:=MidStr(FieldB2[n],1,i);
showmessage(FS[m,j]);
j:=j+1;
end;
n:=n+1;
end;不过循环过程中好象m和n永远相等啊,没有必要用两个变量吧?