strdup
From cppreference.com
Defined in header <string.h>
|
||
char *strdup( const char *str1 ); |
(since C23) | |
Returns a pointer to a null-terminated byte string, which is a duplicate of the string pointed to by str1
. The space for the new string is obtained as if the malloc was invoked. The returned pointer must be passed to free to avoid a memory leak.
If an error occurs, a null pointer is returned and errno might be set.
Parameters
str1 | - | pointer to the null-terminated byte string to duplicate |
Return value
A pointer to the newly allocated string, or a null pointer if an error occurred.
Notes
The function is identical to the POSIX strdup.
Example
Run this code
Output:
s2 = "Duplicate me!"
See also
(C23) |
allocates a copy of a string of specified size (function) |
(C11) |
copies one string to another (function) |
allocates memory (function) | |
deallocates previously allocated memory (function) |