gpt4 book ai didi

Pascal:如何将数组传递给子程序?

转载 作者:行者123 更新时间:2023-12-02 17:30:29 24 4
gpt4 key购买 nike

我制作了一个程序,其中包含一个以数组作为参数之一的过程

program something ;

const someArray: array[1..4] of integer = (1, 2, 3, 4);

procedure name(someArray: array; a, n: integer);
begin
....
end;

begin
name(someArray, x, y)
end.

编译程序后出现错误: 致命:语法错误,OF 预期但是;找到(函数名称()突出显示)

为什么这个程序不起作用?

最佳答案

您需要正确声明您的参数,作为一个开放数组。您可以使用 LowHigh 找到数组的边界。

这是一个(无用但有效的)示例:

program Sample;
Var x,y: Integer;

const
SomeArray: array[1..4] of Integer = (1, 2, 3, 4);

procedure Name(const AnArray: Array of Integer; const A, B: Integer);
var
OutOne, OutTwo, i: Integer;
begin
for i := Low(AnArray) to High(AnArray) do
begin
OutOne := AnArray[i] * A;
OutTwo := AnArray[i] * B;
WriteLn('One: ', OutOne, ' Two: ', OutTwo);
end;
end;

begin
//x and y have to be initialised before use
Name(SomeArray, x, y);
ReadLn;
end.

关于Pascal:如何将数组传递给子程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34040538/

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