_strnset_s
, _strnset_s_l
, _wcsnset_s
, , _wcsnset_s_l
, _mbsnset_s
, _mbsnset_s_l
, _tcsnset_s
, _tcsncset_s
, _tcsncset_s_l
Bir dizenin karakterlerini belirli bir karaktere başlatır. , , , _wcsnset
, _wcsnset_l
, _mbsnset_l
_mbsnset
, _strnset_l
sürümlerinin_strnset
, CRT'deki Güvenlik özellikleri bölümünde açıklandığı gibi güvenlik geliştirmeleri vardır.
Önemli
_mbsnset_s
ve _mbsnset_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.
, _tcsnset_s
, ve için bkz. Genel metin işlevi eşlemeleri._tcsncset_s_l
_tcsncset_s
_tcsnset_s_l
Sözdizimi
errno_t _strnset_s(
char *str,
size_t numberOfElements,
int c,
size_t count
);
errno_t _strnset_s_l(
char *str,
size_t numberOfElements,
int c,
size_t count,
_locale_t locale
);
errno_t _wcsnset_s(
wchar_t *str,
size_t numberOfElements,
wchar_t c,
size_t count
);
errno_t _wcsnset_s_l(
wchar_t *str,
size_t numberOfElements,
wchar_t c,
size_t count,
_locale_t locale
);
errno_t _mbsnset_s(
unsigned char *str,
size_t numberOfElements,
unsigned int c,
size_t count
);
errno_t _mbsnset_s_l(
unsigned char *str,
size_t numberOfElements,
unsigned int c,
size_t count,
_locale_t locale
);
Parametreler
str
Değiştirilecek dize.
numberOfElements
Arabelleğin str
boyutu.
c
Karakter ayarı.
count
Ayarlanacak karakter sayısı.
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. Geçersiz olarak sonlandırılan geçerli bir dize değilse veya boyut bağımsız değişkeni 0'dan küçük veya buna eşitsestr
, 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, bu işlevler bir hata kodu döndürür ve bu hata koduna ayarlanır errno
. Varsayılan hata kodu, daha belirli bir değerin geçerli olmamasıdır EINVAL
.
Açıklamalar
Bu işlevler, en çok count
ilk karakterlerini str
olarak c
ayarlar. boyutu değerinden büyüksecount
, boyutu str
yerine count
kullanılır.str
değerinden büyükse numberOfElements
ve her iki parametre de boyutundan str
büyükse count
bir hata oluşur.
_wcsnset_s
ve _mbsnset_s
geniş karakterli ve çok baytlı sürümleridir _strnset_s
. dize bağımsız değişkeni _wcsnset_s
geniş karakterli bir dizedir; bu _mbsnset_s
, çok baytlı bir dizedir. Bu üç işlev 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 ile 0xFE
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 işlevi eşlemeleri
Sütundaki tchar.h
işlev, derleme zamanında tanımlanan karakter kümesine bağlı olarak diğer sütunlardaki işlevle eşler.
tchar.h işlevi |
_UNICODE ve _MBCS tanımlanmadı |
_MBCS tanımlanan |
_UNICODE tanımlanan |
---|---|---|---|
_tcsnset_s |
_strnset_s |
_mbsnbset_s |
_wcsnset_s |
_tcsnset_s_l |
_strnset_s_l |
_mbsnbset_s_l |
_wcsnset_s_l |
_tcsncset_s |
_strnset_s |
_mbsnset_s |
_wcsnset_s |
_tcsncset_s_l |
_strnset_s_l |
_mbsnset_s_l |
_wcsnset_s_l |
Gereksinimler
Yordam | Gerekli başlık |
---|---|
_strnset_s |
<string.h> |
_strnset_s_l |
<tchar.h> |
_wcsnset_s |
<string.h> veya <wchar.h> |
_wcsnset_s_l |
<tchar.h> |
_mbsnset_s , _mbsnset_s_l |
<mbstring.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Örnek
// crt_strnset_s.c
#include <string.h>
#include <stdio.h>
int main( void )
{
char string[15] = "This is a test";
/* Set not more than 4 characters of string to be *'s */
printf( "Before: %s\n", string );
_strnset_s( string, sizeof(string), '*', 4 );
printf( "After: %s\n", string );
}
Before: This is a test
After: **** is a test
Ayrıca bkz.
Dize işleme
Yerel ayar
Çok baytlı karakter dizilerinin yorumlanması
strcat
, wcscat
, _mbscat
strcmp
, wcscmp
, _mbscmp
strcpy
, wcscpy
, _mbscpy
_strset
, _strset_l
, _wcsset
, , _wcsset_l
, _mbsset
, _mbsset_l