3

从用户读取数据后,有什么方法可以使 x 数组保持不变?从用户(例如y)读取变量的值后,有什么方法可以使变量不可修改?

program hmm;
    uses crt;
    var 
        i, y: word;
        x: array of word;
begin
    readln(y);
    y:=y-1;
    SetLength(x,y); 
    for i := 0 to y do begin
        read(x[i]);
    end;
readkey;
end.

为了使 y 保持不变,我尝试了类似的方法,但它不起作用 - y 将设置为 0。

program hmm;
    uses crt;
    var 
        i: word;
        x: array of word;
    const
    {$J+}
        y:word = 0;
    {$J-}
begin
    {$J+}
    readln(y);
    y:=y-1;
    {$J-}
    y:=0;
    SetLength(x,y); 
    for i := 0 to y do begin
        read(x[i]);
    end;
readkey;
end.

感谢帮助。

4

1 回答 1

3

是的。设置初始值后,请勿在代码中更改其中任何一个。

除此之外,没有任何办法。根据定义,动态数组是可变的,变量也是如此 - 这就是它们具有动态变量作为名称的原因。

于 2012-11-06T00:33:55.257 回答