Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
| Message-ID | <4F97E841.C6B@mindspring.com> (permalink) |
|---|---|
| Date | 2012-04-25 08:04 -0400 |
| From | pete <pfiland@mindspring.com> |
| Organization | PF |
| Newsgroups | comp.lang.c |
| Subject | Re: What standard library functions must deal with allocated memory? |
| References | <4f9598df$0$20194$426a74cc@news.free.fr> <14459967.23.1335253094679.JavaMail.geo-discussion-forums@yndm3> <lnty08o032.fsf@nuthaus.mib.org> |
Keith Thompson wrote: > > Malcolm McLean <malcolm.mclean5@btinternet.com> writes: > > בת×ריך ×™×•× ×©× ×™, 23 ב×פריל 2012 19:01:49 UTC+1, מ×ת Francois Grieu: > >> I'm trying to list all the standard C99/C2011 > >> library functions that, by > >> design, must deal with allocated memory in any way. > >> > >> I've seen calloc malloc realloc free. Is there any other? > >> If strdup was a standard function (it is not), > > it would be in my list. > >> > > None of them, except for malloc(), realloc() and free() themselves. > > > > This appears to have been a deliberate design decision. > > strdup() is an > > obvious candidate for a library function, > > but including it would make > > the string library dependent on an allocation package > > being available. > > It wasn't a matter of depending on the availability of an allocation > package; *any* conforming hosted implementation > must provide malloc/free > and the functions declared in <string.h>. > > I think the committee just felt it was a cleaner design. If strdup were to have been part of the standard library, it would have have made more sense to declare it in stdlib.h as one of the "Memory management functions", rather than to declare it in string.h. -- pete
Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
What standard library functions must deal with allocated memory? Francois Grieu <fgrieu@gmail.com> - 2012-04-23 20:01 +0200
Re: What standard library functions must deal with allocated memory? James Kuyper <jameskuyper@verizon.net> - 2012-04-23 14:17 -0400
Re: What standard library functions must deal with allocated memory? Francois Grieu <fgrieu@gmail.com> - 2012-04-23 20:37 +0200
Re: What standard library functions must deal with allocated memory? Barry Schwarz <schwarzb@dqel.com> - 2012-04-23 12:26 -0700
Re: What standard library functions must deal with allocated memory? Keith Thompson <kst-u@mib.org> - 2012-04-23 14:04 -0700
Re: What standard library functions must deal with allocated memory? Robert Wessel <robertwessel2@yahoo.com> - 2012-04-23 17:15 -0500
Re: What standard library functions must deal with allocated memory? Francois Grieu <fgrieu@gmail.com> - 2012-04-23 23:18 +0200
Re: What standard library functions must deal with allocated memory? Eric Sosman <esosman@ieee-dot-org.invalid> - 2012-04-23 21:55 -0400
Re: What standard library functions must deal with allocated memory? Quentin Pope <nospam@nospam.invalid> - 2012-04-24 02:07 +0000
Re: What standard library functions must deal with allocated memory? Dr Nick <3-nospam@temporary-address.org.uk> - 2012-04-24 07:05 +0100
Re: What standard library functions must deal with allocated memory? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-04-24 00:38 -0700
Re: What standard library functions must deal with allocated memory? Keith Thompson <kst-u@mib.org> - 2012-04-24 22:24 -0700
Re: What standard library functions must deal with allocated memory? pete <pfiland@mindspring.com> - 2012-04-25 08:04 -0400
Re: What standard library functions must deal with allocated memory? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2012-04-28 04:09 -0700
Re: What standard library functions must deal with allocated memory? Stephen Sprunk <stephen@sprunk.org> - 2012-04-25 01:19 -0500
Re: What standard library functions must deal with allocated memory? pete <pfiland@mindspring.com> - 2012-04-25 07:55 -0400
Re: What standard library functions must deal with allocated memory? gordonb.ho66c@burditt.org (Gordon Burditt) - 2012-04-27 20:44 -0500
csiph-web