整数到字符串转换的错误

时间:2011-10-13 09:31:51

标签: delphi type-conversion delphi-7

我在Windows XP上使用Delphi 7进行编程。该程序的这一部分是为opendialog定义一个标题,我有一个非常奇怪的问题。

带错误的代码如下

od_cap := 'Select data set ' + intToStr(n_data_sets);

其中od_cap是一个字符串,n_data_sets是一个整数。出现的错误是EAccessViolation at address 0040459a ...我已将问题缩小到由inttostr转换引起的问题,因为当我od_cap := inttostr(2)时它仍会崩溃。更奇怪的是,第一次计算这一行时,它会起作用,但每次都会第二次崩溃。

我无法想到为什么会这样,我没有足够的经验知道任何可能导致这种情况的错误。我认为这是您需要的所有信息,但可以随意提出更多信息。

1 个答案:

答案 0 :(得分:1)

IntToStr()在转换期间不会引发AV。更可能发生的是od_cap变量不是有效的String变量,例如它是否是已释放的对象的成员,因此在分配给它时会发生AV。 / p>