Pascal - 将指针传递给子程序
指针变量可以作为函数和过程参数中的参数传递。 指针变量既可以作为值参数也可以作为变量参数传递; 但是,当作为可变参数传递时,子程序可能会无意中更改指针的值,从而导致奇怪的结果。
以下程序说明了将指针传递给函数 −
program exPointertoFunctions;
type
iptr = ^integer;
var
i: integer;
ptr: iptr;
function getNumber(p: iptr): integer;
var
num: integer;
begin
num:=100;
p:= @num;
getNumber:=p^;
end;
begin
i := getNumber(ptr);
writeln(' Here the pointer brings the value ', i);
end.
当上面的代码被编译并执行时,会产生以下结果 −
Here the pointer brings the value: 100

