_strset, _strset_l, _wcsset, , _wcsset_l, _mbsset, _mbsset_l

Dizenin karakterlerini bir karaktere ayarlar. Bu işlevlerin daha güvenli sürümleri mevcuttur; bkz. _strset_s, _strset_s_l, _wcsset_s_wcsset_s_l, , _mbsset_s, _mbsset_s_l.

Önemli

_mbssetve _mbsset_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

char *_strset(
   char *str,
   int c
);
char *_strset_l(
   char *str,
   int c,
   _locale_t locale
);
wchar_t *_wcsset(
   wchar_t *str,
   wchar_t c
);
wchar_t *_wcsset_l(
   wchar_t *str,
   wchar_t c,
   _locale_t locale
);
unsigned char *_mbsset(
   unsigned char *str,
   unsigned int c
);
unsigned char *_mbsset_l(
   unsigned char *str,
   unsigned int c,
   _locale_t locale
);

Parametreler

str
Null ile sonlandırılan dize ayarlanacak.

c
Karakter ayarı.

locale
Kullanılacak yerel ayar.

Dönüş değeri

Değiştirilen dizeye bir işaretçi döndürür.

Açıklamalar

İşlev, _strset tüm karakterlerini (sonlandırıcı null karakter hariç) str colarak ayarlar ve öğesine dönüştürülür char. _wcsset ve _mbsset_l geniş karakterli ve çok baytlı karakter sürümleridir _strsetve 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.

_mbsset parametrelerini doğrular. Boş bir işaretçiysestr, parametre doğrulamasında açıklandığı gibi geçersiz parametre işleyicisi çağrılır. Yürütmenin devam etmesi için izin verilirse, _mbsset döndürür NULL ve olarak EINVALayarlanırerrno. _strset ve _wcsset parametrelerini doğrulamaz.

Çı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 sürümleri aynıdır, ancak son ekine sahip _l olmayanlar geçerli yerel ayarı, son ekine sahip _l olanlar ise geçirilen yerel ayar parametresini kullanır. Daha fazla bilgi için bkz . Yerel Ayar.

Önemli

Bu işlevler arabellek taşması tehditlerine karşı savunmasız olabilir. Arabellek taşmaları, sistem saldırıları için kullanılabilir çünkü bunlar gereksiz ayrıcalık yükseltmesine neden olabilir. Daha fazla bilgi için bkz . Arabellek taşmalarından kaçınma.

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 _strset _mbsset _wcsset
_tcsset_l _strset_l _mbsset_l _wcsset_l

Gereksinimler

Yordam Gerekli başlık
_strset <string.h>
_strset_l <tchar.h>
_wcsset <string.h> veya <wchar.h>
_wcsset_l <tchar.h>
_mbsset, _mbsset_l <mbstring.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

Örnek

// crt_strset.c
// compile with: /W3

#include <string.h>
#include <stdio.h>

int main( void )
{
   char string[] = "Fill the string with something.";
   printf( "Before: %s\n", string );
   _strset( string, '*' ); // C4996
   // Note: _strset is deprecated; consider using _strset_s instead
   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