pascal中fillchar和sizeof问题

来源:百度知道 编辑:UC知道 时间:2024/09/24 22:54:27
var
P: array[0..999] of Longint;
begin
FillChar(P, SizeOf(P), 0); {相当于 for i:=1 to 999 do p[i]:=0; }
Writeln(P[999]);
end.
其中sizeof(p)是什么意思?
还有如果0改为一的话,p[i]就被赋成另外一些数字,为什么呢?

fillchar是字符填充用的,如FillChar(P, SizeOf(P), 0);
是以0去填充p这个数组,而sizeof则是求数组的长度,因此,当0变为1时,则以1去填充p这个数组,数组中的所有元素会被副值为1

FillChar是字符填充函数
用指定字符去填充字符串
Sizeof是取一个对象的大小

sizeof 是P一共多少项,fillchar是往P里填sizeof(P)个0;