Partager via


char_traits::_Move_s

Copie un nombre spécifié de caractères d'une séquence à une autre, chevauchant éventuellement la séquence.

static char_type *_Move_s(
    char_type *_Dest,
    size_t _Dest_size,
    const char_type *_From,
    size_t _Count
);

Paramètres

  • _Dest
    L'élément au début de la chaîne ou du tableau de caractères destiné à recevoir la copie de séquence de caractères.

  • _Dest_size
    La taille de _Dest. Si char_type a la valeur char, alors cette valeur est en octets. Si char_type a la valeur wchar_t, alors cette valeur est en mots.

  • _From
    L'élément au début de la chaîne ou du tableau de caractères source à copier.

  • _Count
    Le nombre d'éléments à copier à partir de la chaîne source.

Valeur de retour

Le premier élément _Dest copié dans la chaîne ou tableau de caractères destiné à recevoir la copie de la séquence de caractères.

Notes

La source et la destination peuvent se chevaucher.

Exemple

// 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;
}
  

Configuration requise

En-tête : <chaîne>

Espace de noms : std

Voir aussi

Référence

char_traits, struct

Bibliothèques sécurisées : bibliothèque standard C++