strdup.c

来自「《c与指针》书的代码 是我学习这本书时候敲出来的」· C语言 代码 · 共 29 行

C
29
字号
/*
** Make a copy of a string in dynamically allocated memory.  Note: 
** caller is responsible for checking whether the memory was
** allocated!  This allows the caller to respond to an error in
** any way they wish.
*/
#include <stdlib.h>
#include <string.h>

char *
strdup( char const *string )
{
	char	*new_string;

	/*
	** Ask for enough memory to hold the string and its
	** terminating NUL byte.
	*/
	new_string = malloc( strlen( string ) + 1 );

	/*
	** If we got the memory, copy the string.
	*/
	if( new_string != NULL )
		strcpy( new_string, string );

	return new_string;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?