gpt4 book ai didi

arrays - 处理文本文件和数组(需要说明)

转载 作者:行者123 更新时间:2023-12-03 18:26:53 25 4
gpt4 key购买 nike

我正在忙于处理11年级的旧试卷,而我的老师没有解释诸如(ipos -1)之类的事情的重要性,有人可以解释为什么需要这样做,因为此刻我正努力了解什么ipos-1和复制和删除功能一样。下面提供了代码:

procedure TForm1.CreateBookCode1Click(Sender: TObject);
var icount,k,ipos:integer;
begin
richedit1.Clear;
richedit1.Lines.Add('Book Title'+#9+'Book Code');
for k:=1 to icount do
begin
ipos := pos(';',arrBooks[k]);
arrtitle[k] := copy(arrbooks[k],1,ipos-1);
delete(arrbooks[k],1,ipos);
ipos := pos(',',arrbooks[k]);
arrsurname[k]:= copy(arrbooks[k],1,ipos-1);
arrcode[k] := copy(arrsurname[k],1,3) +inttostr(k);

richedit1.Lines.add(arrtitle[k] + #9 + arrcode[k]);
end;

最佳答案

ipos := pos(';',arrBooks[k]);
arrtitle[k] := copy(arrbooks[k],1,ipos-1);


这说:“将arrtitles数组的第k个元素设置为arrbooks数组的第k个元素中第一个分号之前的字符串。

换句话说,每个元素的标题是元素的第一部分,即分号之前的位。

从ipos减去1的原因是ipos是分号在arrbooks数组的第k个元素中的位置。从副本中减去一个意味着您不复制分号。

请注意,这里似乎至少存在两个问题:

1)icount似乎没有被初始化。它应包含arrbooks数组中的元素数。

2)在设置ipos的行中,arrbooks的键入错误:它的首字母为B

delete(arrbooks[k],1,ipos);

这说:“从一开始就删除arrbooks数组的第k个元素中的所有字符,包括分号(因为ipos指向arrbooks数组的第k个要素中的分号)。

关于arrays - 处理文本文件和数组(需要说明),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26698204/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com