Arrays in Pascal

A is an array of Boolean values.
Is there a way to write something like:  A:=False;
instead of writing:    for I:=1 to 10 do  A[I]:=False;
LVL 5
ronit051397Asked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
d003303Connect With a Mentor Commented:
or quite simply (and standard-following)...you can do

PROCEDURE resetArray(a: ARRAY OF BOOLEAN);
VAR i: INTEGER;
BEGIN
    FOR i:= low(a) TO high(a) DO a[i]:=FALSE
END;
0
 
williams2Commented:
Nope! ..I don't think so, but otherwise it would look very ugly, and not necessaryly be much faster either.

An alternative would be

Function getBoolArray(BitArray: Integer; index: 0..31): Boolean;
Begin
  Result:= (BitArray Shr index) AND $1 = 1;
End;

Procedure ResetArray(var BitArray: Integer);
Begin BitArray:= 0 end;

I think by chance you should increase points in the future. You can buy them if you don't want to earn them.
0
 
d003303Commented:
Yes, of course, FillChar...
Is there way to define in Pascal like in C:  X:=Y:=Z:=2;  ?
0
 
ronit051397Author Commented:
Depends on your needs. If you want 3 variables that ALWAYS share the same value it works with the adress operator '@'.
If the variables are members of a structure and declared next to each other, use FillChar.
Otherwise, nope.

Slash/d003303
0
All Courses

From novice to tech pro — start learning today.