Changeset 609 for branches/GNU/src/binutils/libiberty/strdup.c
- Timestamp:
- Aug 16, 2003, 6:59:22 PM (22 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/GNU/src/binutils/libiberty/strdup.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 /* 2 3 @deftypefn Supplemental char* strdup (const char *@var{s}) 4 5 Returns a pointer to a copy of @var{s} in memory obtained from 6 @code{malloc}, or @code{NULL} if insufficient memory was available. 7 8 @end deftypefn 9 10 */ 11 12 #include <ansidecl.h> 13 #ifdef ANSI_PROTOTYPES 14 #include <stddef.h> 15 #else 16 #define size_t unsigned long 17 #endif 18 19 extern size_t strlen PARAMS ((const char*)); 20 extern PTR malloc PARAMS ((size_t)); 21 extern PTR memcpy PARAMS ((PTR, const PTR, size_t)); 22 1 23 char * 2 24 strdup(s) 3 25 char *s; 4 26 { 5 char *result = (char*)malloc(strlen(s) + 1);6 if (result == (char*)0)7 return (char*)0; 8 strcpy(result, s);9 return result;27 size_t len = strlen (s) + 1; 28 char *result = (char*) malloc (len); 29 if (result == (char*) 0) 30 return (char*) 0; 31 return (char*) memcpy (result, s, len); 10 32 } -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.