从数组中为变量赋值 - pascal

时间:2015-07-02 18:56:16

标签: arrays pascal

我有一个数组,我希望将数组的一部分的值赋给一个字符串,但是,我收到一个错误:

  

左侧无法分配到

当我这样做时:

(s):=(Array[1]);

有谁知道如何解决这个问题?

3 个答案:

答案 0 :(得分:3)

这是我测试的所有32/64位Delphi版本的功能(或错误?)。即使是最小的完整程序,如

program test;
var
  s: string;
begin
  (s) := 'a';
  writeln(s);
end.
如果没有此错误,

将无法编译。 Turbo / Borland,Virtual或Free Pascal没有问题(即使在Delphi模式下)。我假设Delphis将(s)视为一个表达式,它可以具有值,但您不能为其分配值。 当然,如果你写s := 'a'; Delphi按预期工作。

顺便说一句:我认为这是一个坏习惯,你在变量和表达式周围放置了多余的()

答案 1 :(得分:1)

很抱歉在这里碰到一个旧线程,但我相信你应该先声明你的阵列。 如果变量Array被视为字符串,那么Array[1]的输出将是该字符串的第一个字符。

答案 2 :(得分:0)

试试这个代码......

Var
    myVar   : Integer;
    myArray : Array[1..5] of Integer;

Begin
 myArray[2] := 25;
 myVar := myArray[2];
End.

参考:http://pascal-programming.info/lesson10.php