char_traits::_Move_s
지정한 수의 문자 시퀀스를 다른 가능한 시퀀스가 겹치는 복사 합니다.
static char_type *_Move_s(
char_type *_Dest,
size_t _Dest_size,
const char_type *_From,
size_t _Count
);
매개 변수
_Dest
복사한 일련의 문자를 받을 대상 문자열 또는 문자 배열 시작 부분에 있는 요소입니다._Dest_size
크기의 _Dest.경우 char_type 입니다 char,이 바이트입니다.경우 char_type 는 wchar_t, 단어에서 다음._From
복사할 원본 문자열 또는 문자 배열에 있는 요소입니다._Count
원본 문자열에서 복사할 요소의 수입니다.
반환 값
첫 번째 요소 _Dest 복사한 일련의 문자를 받을 대상 문자열 또는 문자 배열로 복사 합니다.
설명
원본과 대상이 겹칠 수 있습니다.
예제
// char_traits__Move_s.cpp
// compile with: /EHsc
#include <string>
#include <iostream>
int main( )
{
using namespace std;
char_traits<char>::char_type sFrom1[] = "abcd-1234-abcd";
char_traits<char>::char_type sTo1[] = "ABCD-1234";
char_traits<char>::char_type* result1;
cout << "The source string sFrom1 is: " << sFrom1 << endl;
cout << "The destination stringsTo1 is: " << sTo1 << endl;
result1 = char_traits<char>::_Move_s(sTo1,
char_traits<char>::length(sTo1), sFrom1, 4);
cout << "The result1 = _Move_s(sTo1, "
<< "char_traits<char>::length(sTo1), sFrom1, 4) is: "
<< result1 << endl << endl;
// When source and destination overlap
char_traits<char>::char_type sToFrom2[] = "abcd-1234-ABCD";
char_traits<char>::char_type* result2;
cout << "The source/destination string sToFrom2 is: "
<< sToFrom2 << endl;
const char* findc = char_traits<char>::find(sToFrom2, 4, 'c');
result2 = char_traits<char>::_Move_s(sToFrom2,
char_traits<char>::length(sToFrom2), findc, 8);
cout << "The result2 = _Move_s(sToFrom2, "
<< "char_traits<char>::length(sToFrom2), findc, 8) is: "
<< result2 << endl;
}
요구 사항
헤더: <string>
네임 스페이스: std