strncpy() 함수는 지정된 수의 문자를 소스에서 대상으로 복사하는 데 사용됩니다.
다음은 strncpy()
의 구문입니다.char *strncpy( char *destination, char *source, size_t n);
여기서 destination은 원본 문자열을 복사할 대상 배열에 대한 포인터이고, source는 복사할 문자열이며 n은 원본 문자열에서 복사할 최대 문자 수입니다.
strncpy() 함수는 소스 문자열의 처음 n개 문자에서 NULL 문자를 사용할 수 없으면 대상 문자열이 NULL로 종료되지 않기 때문에 안전하지 않습니다.
C++에서 strncpy()를 시연하는 프로그램은 다음과 같다.
예시
#include <iostream> #include <cstring> using namespace std; int main () { char source[20] = "This is a string"; char dest[20]; strncpy(dest, source, 4); cout << "The destination string is: " << dest; return 0; }
출력
위 프로그램의 출력은 다음과 같습니다.
The destination string is: This
이제 위의 프로그램을 이해합시다.
소스 문자열에는 "이것은 문자열입니다"라는 데이터가 포함되어 있습니다. 그런 다음 strncpy()를 사용하여 처음 네 문자를 대상 문자열에 복사합니다. 그런 다음 대상 문자열의 내용이 인쇄됩니다. 이를 보여주는 코드 스니펫은 다음과 같습니다.
char source[20] = "This is a string"; char dest[20]; strncpy(dest, source, 4); cout << "The destination string is: " << dest;