함수명 : strdup
헤더 파일 : <string.h>
함수 프로토타입: char *strdup(const char *str);
함수 : 새로 생성된 공간에 문자열을 복사합니다. 이 함수는 먼저 malloc()을 사용하여 매개변수 str 문자열과 동일한 공간 크기를 구성한 다음 매개변수 str 문자열의 내용을 메모리 주소에 복사한 다음 주소를 반환합니다. . 이 주소는 free()를 사용하여 최종적으로 해제될 수 있습니다.
매개변수 : char *str은 복사할 문자열입니다.
반환 값 : 복사 후 새 문자열 주소를 가리키는 문자열 포인터를 반환합니다. NULL이 반환되면 메모리가 부족함을 나타냅니다.
참고 : 표준 라이브러리 기능이 아니며 Windows(VC, MinGW 등)에서만 사용할 수 있습니다. Linux GCC에서 직접 정의해야 합니다.
프로그램 예: string 문자열을 dup_str에 복사하고 결과를 출력합니다.
#include<string.h>#include<stdio.h>#include<stdlib.h>intmain(void){char*dup_str,*string=www.dotcpp.com;dup_str=strdup(string);printf(%s n,dup_str);free(dup_str);return0;}
실행 결과:
www.dotcpp.com