Path: utzoo!attcan!uunet!ccicpg!felix!arcturus!mitch From: mitch@arcturus.UUCP (Mitchell S. Gorman) Newsgroups: comp.lang.pascal Subject: Re: Pointers / Linked lists with files.. Summary: Turbo's data structure limitations Message-ID: <4687@arcturus> Date: 15 May 89 22:30:12 GMT References: <5708@cs.Buffalo.EDU> <1389@bucket.UUCP> <3377@westfort.UUCP> Organization: Rockwell International, Anaheim, CA Lines: 33 In article <3377@westfort.UUCP>, dragon@westfort.UUCP (The Mystic) writes: > [...] > > Type > mbrec=record > t:array[1..100] of string[30]; > f:array[1..100] of string[25]; > tpc:array[1..100] of string[20]; > dte:array[1..100] of string[10]; > tme:array[1..100] of string[8]; > num:array[1..100] of integer; > bnm:array[1..50] of string[20]; > mgs:integer; > > Var > mb:array[1..50] of mbrec; > fm:file of mbrec; > Turbo will not allow a single data structure to exceed 64k bytes (actually, it's something like 65300 or so). What you may wish to do, instead of actually making mb into a linked-list or something like that, would be to simply declare the elements of the record to be arrays of pointers to strings, as opposed to arrays of strings. (The difference between storing 4 bytes of pointer instead of 31 bytes of string is obviously huge on this scale, and the changes necessary to your code to implement this method of dealing with the problem are much easier to effect.) Mitch @ Rockwell, Anaheim Disclaimer: Jes' a suggestion...