Aracılığıyla paylaş


_mbsnbcat, _mbsnbcat_l

Çok baytlı bir dizenin ilk n baytını en çok başka bir dizeye ekler. Bu işlevlerin daha güvenli sürümleri mevcuttur; bkz. _mbsnbcat_s, _mbsnbcat_s_l.

Önemli

Bu API, Windows Çalışma Zamanı yürütülen uygulamalarda kullanılamaz. Daha fazla bilgi için bkz. Evrensel Windows Platformu uygulamalarında desteklenmeyen CRT işlevleri.

Sözdizimi

unsigned char *_mbsnbcat(
   unsigned char *dest,
   const unsigned char *src,
   size_t count
);
unsigned char *_mbsnbcat_l(
   unsigned char *dest,
   const unsigned char *src,
   size_t count,
   _locale_t locale
);
template <size_t size>
unsigned char *_mbsnbcat(
   unsigned char (&dest)[size],
   const unsigned char *src,
   size_t count
); // C++ only
template <size_t size>
unsigned char *_mbsnbcat_l(
   unsigned char (&dest)[size],
   const unsigned char *src,
   size_t count,
   _locale_t locale
); // C++ only

Parametreler

dest
Null olarak sonlandırılan çok baytlı hedef dize.

src
Null olarak sonlandırılan çok baytlı kaynak dize.

count
sonuna eklenecek destbayt src sayısı.

locale
Kullanılacak yerel ayar.

Dönüş değeri

_mbsnbcat hedef dizeye bir işaretçi döndürür. Hata belirtmek için hiçbir dönüş değeri ayrılmaz.

Açıklamalar

_mbsnbcat işlevi, en çok ilk count baytlarını src sonuna eklerdest. içindeki dest null karakterden hemen önce gelen bayt bir müşteri adayı bayt ise, ilk bayt bu müşteri adayı baytının src üzerine yazar. Aksi takdirde, ilk bayt değeri src sonlandırıcı null karakterinin destüzerine yazar. Baytlar eklenmeden önce count içinde null bayt görünürsesrc, _mbsnbcat içindeki tüm baytları srcnull karaktere ekler. uzunluğundan büyüksecount, uzunluğu src yerine countkullanılır.src Sonuçta elde edilen dize null karakterle sonlandırılır. Kopyalama çakışan dizeler arasında gerçekleşirse, davranış tanımlanmamıştır.

Çıkış değeri, yerel ayarın LC_CTYPE kategori ayarının ayarından etkilenir. Daha fazla bilgi için bkz. setlocale. İşlevin _mbsnbcat sürümü, bu yerel ayara bağımlı davranış için geçerli yerel ayarı kullanır; _mbsnbcat_l bunun yerine geçirilen yerel ayar parametresini kullanmaları dışında sürüm aynıdır. Daha fazla bilgi için bkz . Yerel Ayar.

Güvenlik Notu Null olarak sonlandırılan bir dize kullanın. Null olarak sonlandırılan dize, hedef arabelleğin boyutunu aşmamalıdır. Daha fazla bilgi için bkz . Arabellek taşmalarından kaçınma.

veya destsrc iseNULL, işlev Parametre doğrulama bölümünde açıklandığı gibi geçersiz bir parametre hatası oluşturur. Hata işlenirse işlev döndürür EINVAL ve olarak EINVALayarlanırerrno.

C++ dilinde, bu işlevlerin daha yeni ve güvenli karşılıklarını çağıran şablon aşırı yüklemeleri vardır. Daha fazla bilgi için bkz . Güvenli şablon aşırı yüklemeleri.

Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.

Genel metin yordamı eşlemeleri

Tchar.h yordamı _UNICODE ve _MBCS tanımlanmadı _MBCS Tanımlanan _UNICODE Tanımlanan
_tcsncat strncat _mbsnbcat wcsncat
_tcsncat_l _strncat_l _mbsnbcat_l _wcsncat_l

Gereksinimler

Yordam Gerekli başlık
_mbsnbcat <mbstring.h>
_mbsnbcat_l <mbstring.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

Ayrıca bkz.

Dize işleme
_mbsnbcmp, _mbsnbcmp_l
_strncnt, _wcsncnt, _mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_l
_mbsnbcpy, _mbsnbcpy_l
_mbsnbicmp, _mbsnbicmp_l
_mbsnbset, _mbsnbset_l
strncat, _strncat_l, wcsncat, _wcsncat_l, _mbsncat, _mbsncat_l
_mbsnbcat_s, _mbsnbcat_s_l