Aracılığıyla paylaş


_strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l

Dizenin karakterlerini bir karaktere ayarlar. , , , _wcsset, _wcsset_l, _mbsset_l_mbsset , _strset_lsürümlerinin_strset, CRT'deki Güvenlik özellikleri bölümünde açıklandığı gibi güvenlik geliştirmeleri vardır.

Önemli

_mbsset_sve _mbsset_s_l 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

errno_t _strset_s(
   char *str,
   size_t numberOfElements,
   int c
);
errno_t _strset_s_l(
   char *str,
   size_t numberOfElements,
   int c,
   _locale_t locale
);
errno_t _wcsset_s(
   wchar_t *str,
   size_t numberOfElements,
   wchar_t c
);
errno_t *_wcsset_s_l(
   wchar_t *str,
   size_t numberOfElements,
   wchar_t c,
   _locale_t locale
);
errno_t _mbsset_s(
   unsigned char *str,
   size_t numberOfElements,
   unsigned int c
);
errno_t _mbsset_s_l(
   unsigned char *str,
   size_t numberOfElements,
   unsigned int c,
   _locale_t locale
);

Parametreler

str
Null ile sonlandırılan dize ayarlanacak.

numberOfElements
Arabelleğin str boyutu.

c
Karakter ayarı.

locale
Kullanılacak yerel ayar.

Dönüş değeri

Başarılı olursa sıfır, aksi takdirde hata kodu.

Bu işlevler bağımsız değişkenlerini doğrular. Null işaretçiyse veya numberOfElements bağımsız değişken 0'dan küçükse veya 0'a eşitse str veya geçirilen blok null olarak sonlandırılmamışsa, Parametre doğrulama bölümünde açıklandığı gibi geçersiz parametre işleyicisi çağrılır. Yürütmenin devam etmesi için izin verilirse, bu işlevler döndürülerek EINVAL olarak EINVALayarlanırerrno.

Açıklamalar

işlevi, _strset_s sonlandırıcı null karakter dışında öğesinin tüm karakterlerini strc olarak ayarlar (öğesine dönüştürülür char). _wcsset_s ve _mbsset_s geniş karakterli ve çok baytlı sürümleridir _strset_s. Bağımsız değişkenlerin ve dönüş değerlerinin veri türleri buna göre değişir. Bu işlevler aynı şekilde davranır.

Çıkış değeri, yerel ayarın LC_CTYPE kategori ayarının ayarından etkilenir. Daha fazla bilgi için bkz. setlocale. Bu işlevlerin son eki olmayan _l sürümleri, bu yerel ayara bağımlı davranış için geçerli yerel ayarı kullanır; son ekine _l sahip sürümler, bunun yerine geçirilen yerel ayar parametresini kullanmaları dışında aynıdır. Daha fazla bilgi için bkz . Yerel Ayar.

Bu işlevlerin hata ayıklama kitaplığı sürümleri önce arabelleği 0xFE ile doldurur. Bu davranışı devre dışı bırakmak için kullanın _CrtSetDebugFillThreshold.

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
_tcsset_s _strset_s _mbsset_s _wcsset_s
_tcsset_s_l _strset_s_l _mbsset_s_l _wcsset_s_l

Gereksinimler

Yordam Gerekli başlık
_strset_s <string.h>
_strset_s_l <Tchar>
_wcsset_s <string.h> veya <wchar.h>
_wcsset_s_l <Tchar>
_mbsset_s, _mbsset_s_l <mbstring.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

Örnek

// crt_strset_s.c
#include <string.h>
#include <stdio.h>
#include <stdlib.h>

int main( void )
{
   char string[] = "Fill the string with something.";
   printf( "Before: %s\n", string );
   _strset_s( string, _countof(string), '*' );
   printf( "After:  %s\n", string );
}
Before: Fill the string with something.
After:  *******************************

Ayrıca bkz.

Dize işleme
Yerel ayar
Çok baytlı karakter dizilerinin yorumlanması
_mbsnbset, _mbsnbset_l
memset, wmemset
strcat, wcscat, _mbscat
strcmp, wcscmp, _mbscmp
strcpy, wcscpy, _mbscpy
_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l