_strdup, _wcsdup, _mbsdup
문자열을 복제합니다.
중요 |
---|
_mbsdup실행 하는 응용 프로그램에서 사용할 수 있는 Windows 런타임.자세한 내용은 /zw에 지원 되는 CRT 함수. |
char *_strdup(
const char *strSource
);
wchar_t *_wcsdup(
const wchar_t *strSource
);
unsigned char *_mbsdup(
const unsigned char *strSource
);
매개 변수
- strSource
소스를 null로 끝나는 문자열입니다.
반환 값
이러한 각 함수 저장소 위치로 복사 된 문자열에 대 한 포인터를 반환 하거나 NULL 저장소를 할당할 수 없는 경우.
설명
_strdup 함수 호출 malloc 의 복사본에 대 한 저장소 공간을 할당할 수 strSource 다음 복사 strSource 할당 된 공간입니다.
_wcsdup및 _mbsdup 와이드 및 멀티 바이트 문자 버전의 _strdup.인수 및 반환 값을 _wcsdup 와이드 문자 문자열입니다. _mbsdup 멀티 바이트 문자 문자열입니다.이러한 세 가지 함수 그렇지에 동일 하 게 동작 합니다.
일반 텍스트 루틴 매핑
TCHAR입니다.H 루틴 |
_UNICODE 및 _Mbcs가 정의 되어 있지 않습니다 |
_Mbcs가 정의 |
_Unicode가 정의 |
---|---|---|---|
_tcsdup |
_strdup |
_mbsdup |
_wcsdup |
때문에 _strdup 호출 malloc 의 복사본에 대 한 저장소 공간을 할당할 수 strSource, 항상 호출 하 여이 메모리를 해제 하는 것이 좋습니다는 무료 루틴 호출에 의해 반환 된 포인터 _strdup.
경우 _DEBUG 및 _CRTDBG_MAP_ALLOC 정의 된 _strdup 및 _wcsdup 호출 하 여 대체 _strdup_dbg 및 _wcsdup_dbg 메모리 할당을 디버깅 하는 데 수 있도록.자세한 내용은 _strdup_dbg, _wcsdup_dbg을 참조하십시오.
요구 사항
루틴 |
필수 헤더 |
---|---|
_strdup |
<string.h> |
_wcsdup |
<string.h> 또는 <wchar.h> |
_mbsdup |
<mbstring.h> |
추가 호환성 정보를 참조 하십시오. 호환성.
예제
// crt_strdup.c
#include <string.h>
#include <stdio.h>
int main( void )
{
char buffer[] = "This is the buffer text";
char *newstring;
printf( "Original: %s\n", buffer );
newstring = _strdup( buffer );
printf( "Copy: %s\n", newstring );
free( newstring );
}
해당 .NET Framework 항목
참고 항목
참조
strncat, _strncat_l, wcsncat, wcsncat_l, _mbsncat _mbsncat_l
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
strncpy, _strncpy_l, wcsncpy, _wcsncpy_l, _mbsncpy, _mbsncpy_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l