Jo Dillon wrote: > > the_buffer > > { > > data1 {<8><8><8>} // 3 characters/glyphs/whatever > > data2 {<32>} // 1 character > > data3 {<16><16><16>} // 3 characters > > data4 {<8><8><8><8>} // 4 characters > > } > > the_types > > { > > type_of_data1 = 8; > > type_of_data2 = 32; > > type_of_data3 = 16; > > type_of_data4 = 8; > > } > > > This is complicated to manage when you don't know in advance what > strings you intend to manipulate, and it makes indexing slower than if > at any one time all your characters are stored in a single array with > constant-sized members. Oh, and it also increases memory fragmentation. I understand the indexing part. But only for my satisfaction: why is memory fragmentation bad? (I'd understand it if it was the HDD...) I always thought it was good. By splitting a big chunk of data into smaller pieces uses the memory more efficiently, because you don't have to alloc a large window, which might be hard to find in a very solicitated system system. (Or does this only apply on MS-DOS?) regards, florin. P.S.: Sorry for having sent two messaged with the same contents. I've made some bad experience with mailing lists, and as I couldn't see my first mail after more than 10 minutes, I thought I couldn't post to the list from my home.