[vox-tech] malloc() is ... old school?

Peter Jay Salzman vox-tech@lists.lugod.org
Wed, 19 Mar 2003 18:21:28 -0800


begin Gabriel Rosa <grosa@ucdavis.edu> 
> On Wed, Mar 19, 2003 at 06:08:13PM -0800, Peter Jay Salzman wrote:
> > i've heard this from two people now.
> > 
> > some students are being taught they should stay clear of malloc() and
> > instead use calloc() because calloc() is the "old school" way of getting
> > memory dynamically.  they're taught that malloc() may not be present in
> > all implementations of the C library.  again, because calloc() is "old
> > school".  presumably, malloc() is ... new fangled.   ;)
> > 
> > actually, both people used the words "old school", so i'm assuming
> > that's some kind of quote by the professor.
> > 
> > just for my own self-edification, does anyone know anything about this
> > "old school" and "new school" business?  i've never heard of it before.
> > 
> 
> From what I remember, and from a quick manpage check, calloc is the one that
> zeros the allocated chunk for you.

there's another very slight difference - the way you specify the amount
of memory.

> I would assume that's the real reason why people would instruct their students
> in the use of calloc vs malloc. i think you'd be hard pressed to find a c lib 
> implementation that didn't have malloc, so the "old school" argument is
> probably just a way to sound like you know what you're doing :)

i'm completely man/info page taught, so i figured there was more to the
story than i know about.

but yeah, that was kind of my first reaction too.    :-/

pete

-- 
Fingerprint: B9F1 6CF3 47C4 7CD8 D33E 70A9 A3B9 1945 67EA 951D