Show your source
Geplaatst: 16 apr 2012, 19:27
Er zitten hier een stel mensen die, al of niet voor de kost, computer programmas maken. Voor al die mensen: laat eens een stukje source code van jouw hand zien. Dat geeft vaak zoveel extra informatie over de persoon erachter. Om de spits af te bijten zal ik de eerste zijn:
Ja, Modula-2. Een van de mooiste programmeertalen ooit bedacht.
Code: Selecteer alles
PROCEDURE FileSize (FileName : Strings.String) : CARDINAL;
CONST Chunk = 1024;
VAR n, size : CARDINAL;
m : INTEGER;
inF : BasicIO.File;
tmpPool : MemPools.MemPool;
tmpPtr : POINTER TO CHAR;
BEGIN
n := 0; m := 0;
BasicIO.OpenInput (inF, FileName);
IF NOT BasicIO.DONE THEN RETURN 0 END;
MemPools.NewPool (tmpPool);
MemPools.PoolAllocate (tmpPool, tmpPtr, Chunk);
REPEAT
BasicIO.Read (inF, tmpPtr, Chunk, m);
INC (n, Chunk)
UNTIL m # Chunk;
DEC (n, Chunk);
size := n + CARDINAL (m);
MemPools.KillPool (tmpPool);
BasicIO.Close (inF);
RETURN size
END FileSize;