- :
Read(f,X);
Write(f,X);
f - ' , - , , , , , .
Read(f,X) X. Read(f,X) X.
Write(f,X) X . X .
:
Read(f,X1,X2,...XK);
Write(f,X1,X2,...XK);
f - , 1, 2,... , f.
2.13.3
' '. BlokRead BlockWrite. , Reset Rewrite. , .
var f: File;
' Assign. Reset Rewrite, Close.
128 . TURBO PASCAL - ,
Reset(var f: File; BufSize: Word) Rewrite(var f: File; BufSize: Word)
BufSize , . ̳ BufSize - 1 , - 64 . BlockRead(var f: File; var X; Count: Word; var QuantBlock: Word);
X , Count, . Count 1. , 64 .
' QuantBlock (), BlockRead. QuantBlock = Count, QuantBlock . , QuantBlock .
BlockWrite(var f: File; var X; Count: Word; var QuantBlock: Word);
X , Count, .
|
|
' QuantBlock (), BlockWrite.
2.13.4
, . ( ) , -1 . ϳ +1. , () () . , , .
.
TURBO PASCAL , , . , - . , - .
, . n , 1 1 n. , , 0 1, 1 2 , , n n.
FileSize, FilePos, Seek Truncate.
FileSize(var f): Longint f.
FilePos(var f): Longint f. - . 0. , 1. ϳ 1, 2. ϳ FilePos FileSize.
Seek(var f; N: Longint) (). N , , . , 4, N, 3. Seek .
Truncate(var f) () .
. ID.DAT, - . ʳ 200. , , , , RD.DAT.
Program F;
Var
rArg, rF: Array[1..200] of Real;
inf: Text;
outf: File of Real;
n, l: Integer;
Begin
Assign(inf,'ID.DAT');
Assign(outf,'RD.DAT');
Reset(inf);
Rewrite(outf);
|
|
n:=0;
While not EOF(inf) do
Begin
n:=n+1;
ReadLn(inf,rArg[n],rF[n])
End;
for l:=1 to n do
Begin
WriteLn(l:2,rArg[l]:8:2,rF[l]:8:2);
Write(outf,rArg[l], rF[l]);
End;
Close(outf)
End.
MS - DOS , . - ' 64 . .
TURBO PASCAL Pointer - . Pointer
var p: Pointer;
- 4 , , , - .
.
type NameType= ^T;
var p: NameType;
p - , ' NameType. :
var p: ^T;
, . , p - , p^ - .
NIL, , '. NIL - .
, .
, Addr(X), @X, @ - , X - ' - , .
- .
3 в