Freigeben über


_mbsnbcpy, _mbsnbcpy_l

Kopiert n Bytes einer Zeichenfolge in eine Zielzeichenfolge. Sicherere Versionen dieser Funktionen sind AVAILABLE-sehen _mbsnbcpy_s, _mbsnbcpy_s_l.

Wichtig

Diese API kann nicht in Anwendungen verwendet werden, die im Windows-Runtime ausgeführt werden.Weitere Informationen finden Sie unter CRT-Funktionen nicht mit /ZW unterstützt.

unsigned char * _mbsnbcpy(
   unsigned char * strDest,
   const unsigned char * strSource,
   size_t count
);
unsigned char * _mbsnbcpy_l(
   unsigned char * strDest,
   const unsigned char * strSource,
   size_t count,
   _locale_t locale
);
template <size_t size>
unsigned char * _mbsnbcpy(
   unsigned char (&strDest)[size],
   const unsigned char * strSource,
   size_t count
); // C++ only
template <size_t size>
unsigned char * _mbsnbcpy_l(
   unsigned char (&strDest)[size],
   const unsigned char * strSource,
   size_t count,
   _locale_t locale
); // C++ only

Parameter

  • strDest
    Ziel, damit die Zeichenfolge kopiert werden kann.

  • strSource
    Zu kopierende Zeichenfolge.

  • count
    Anzahl der zu kopierenden Bytes.

  • locale
    Zu verwendendes Gebietsschema.

Rückgabewert

_mbsnbcpy gibt einen Zeiger der Zielzeichenfolge zurück. Kein Rückgabewert ist zur Fehleranzeige reserviert.

Hinweise

Die _mbsnbcpy-Funktion kopiert count Bytes von strSource nach strDest. Wenn count die Größe von strDest überschreitet, oder die Quell- und Zielzeichenfolgen überschneiden, wird das Verhalten von _mbsnbcpy nicht definiert.

Wenn strSource oder strDest ein NULL-Zeiger ist, Aufrufe dieser Funktion Parameterhandler der ungültige, wie in Parametervalidierung beschrieben. Wenn die weitere Ausführung zugelassen wird, gibt die Funktion NULL zurück und setzt errno auf EINVAL.

Der Ausgabewert ist von der LC_CTYPE-Kategorieneinstellung des Gebietsschemas betroffen; weitere Informationen finden Sie unter setlocale, _wsetlocale. Die Versionen dieser Funktionen sind identisch, nur die, die nicht die _l Suffixverwendung das aktuelle Gebietsschema und die Versionen haben, die das Suffix _l stattdessen den Parameter angeben müssen, der übergeben wird. Weitere Informationen finden Sie unter Locale.

SicherheitshinweisSicherheitshinweis

Diese Funktionen sind möglicherweise für Pufferüberlaufrisiken anfällig.Pufferüberläufe können verwendet werden, um beliebige Angreifercode auszuführen, der eine für Ausweitung des Rechts führen und das System gefährdet.Weitere Informationen finden Sie unter Vermeiden von Pufferüberläufen.

In C++ sind diese Funktionen Vorlagenüberladungen, die die neueren aufrufen, sichereren Entsprechungen dieser Funktionen. Weitere Informationen finden Sie unter Sichere Vorlagenüberladungen.

Zuordnung generischer Textroutinen

Tchar.h-Routine

_UNICODE und _MBCS nicht definiert

_MBCS definiert

_UNICODE definiert

_tcsncpy

strncpy

_mbsnbcpy

wcsncpy

_tcsncpy_l

_strncpy_l

_mbsnbcp_l

_wcsncpy_l

Anforderungen

Routine

Erforderlicher Header

_mbsnbcpy

<mbstring.h>

_mbsnbcpy_l

<mbstring.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

.NET Framework-Entsprechung

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

Siehe auch

Referenz

Zeichenfolgenbearbeitung (CRT)

_mbsnbcat, _mbsnbcat_l

_mbsnbcmp, _mbsnbcmp_l

_strncnt, _wcsncnt, _mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_l

_mbsnbset, _mbsnbset_l

strncpy, _strncpy_l, wcsncpy, _wcsncpy_l, _mbsncpy, _mbsncpy_l