basic_string::copy
Kopiert höchstens eine angegebene Anzahl von Zeichen aus einer indizierten Position in einer Quellzeichenfolge in ein Zielzeichenarray.
Diese Methode kann unsicher, da sie im Aufrufer basiert, um zu überprüfen, dass die übergebenen Werte korrekt sind. Verwenden Sie stattdessen basic_string::_Copy_s.
size_type copy(
value_type* _Ptr,
size_type _Count,
size_type _Off = 0
) const;
Parameter
_Ptr
Das Zielzeichenarray, auf das die Elemente kopiert werden sollen._ Count
Die Anzahl von höchstens die Quellzeichenfolge aus der kopiert werden Zeichen._Off
Die Anfangsposition Quellzeichenfolge, in der von der Kopien gemacht werden sollen.
Rückgabewert
Die Anzahl der tatsächlich aus kopiert.
Hinweise
Ein NULL-Zeichen wird nicht an das Ende der Kopie angefügt.
Beispiel
// basic_string_copy.cpp
// compile with: /EHsc /W3
#include <string>
#include <iostream>
int main( )
{
using namespace std;
string str1 ( "Hello World" );
basic_string <char>::iterator str_Iter;
char array1 [ 20 ] = { 0 };
char array2 [ 10 ] = { 0 };
basic_string <char>:: pointer array1Ptr = array1;
basic_string <char>:: value_type *array2Ptr = array2;
cout << "The original string str1 is: ";
for ( str_Iter = str1.begin( ); str_Iter != str1.end( ); str_Iter++ )
cout << *str_Iter;
cout << endl;
basic_string <char>:: size_type nArray1;
// Note: string::copy is potentially unsafe, consider
// using string::_Copy_s instead.
nArray1 = str1.copy ( array1Ptr , 12 ); // C4996
cout << "The number of copied characters in array1 is: "
<< nArray1 << endl;
cout << "The copied characters array1 is: " << array1 << endl;
basic_string <char>:: size_type nArray2;
// Note: string::copy is potentially unsafe, consider
// using string::_Copy_s instead.
nArray2 = str1.copy ( array2Ptr , 5 , 6 ); // C4996
cout << "The number of copied characters in array2 is: "
<< nArray2 << endl;
cout << "The copied characters array2 is: " << array2Ptr << endl;
}
Anforderungen
Header: <Zeichenfolge>
Namespace: std