_strnset
, _strnset_l
, _wcsnset
, , _wcsnset_l
, _mbsnset
, _mbsnset_l
Bir dizenin karakterlerini belirli bir karaktere başlatır. Bu işlevlerin daha güvenli sürümleri vardır; bkz. _strnset_s
, _strnset_s_l
, _wcsnset_s
_wcsnset_s_l
, , _mbsnset_s
, _mbsnset_s_l
.
Önemli
_mbsnset
ve _mbsnset_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 *_strnset(
char *str,
int c,
size_t count
);
char *_strnset_l(
char *str,
int c,
size_t count,
_locale_t locale
);
wchar_t *_wcsnset(
wchar_t *str,
wchar_t c,
size_t count
);
wchar_t *_wcsnset_l(
wchar_t *str,
wchar_t c,
size_t count,
_locale_t locale
);
unsigned char *_mbsnset(
unsigned char *str,
unsigned int c,
size_t count
);
unsigned char *_mbsnset_l(
unsigned char *str,
unsigned int c,
size_t count,
_locale_t locale
);
Parametreler
str
Değiştirilecek dize.
c
Karakter ayarı.
count
Ayarlanacak karakter sayısı.
locale
Kullanılacak yerel ayar.
Dönüş değeri
Değiştirilen dizeye bir işaretçi döndürür.
Açıklamalar
_strnset
İşlev, en çok öğesinin ilk count
karakterlerini str
c
olarak ayarlar (öğesine char
dönüştürülür). uzunluğundan büyüksecount
, uzunluğu str
yerine count
kullanılır.str
_wcsnset
ve _mbsnset
geniş karakterli ve çok baytlı sürümleridir _strnset
. Dize bağımsız değişkenleri ve dönüş değeri _wcsnset
geniş karakterli dizelerdir. Dize bağımsız değişkenleri ve dönüş değeri _mbsnset
çok baytlı karakter dizeleridir. Bu üç işlev aynı şekilde davranır.
_mbsnset
parametrelerini doğrular; null işaretçiysestr
, 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, _mbsnset
döndürür NULL
ve olarak EINVAL
ayarlanırerrno
. _strnset
ve _wcsnset
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 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.
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 |
---|---|---|---|
_tcsnset |
_strnset |
_mbsnbset |
_wcsnset |
_tcsnset_l |
_strnset_l |
_mbsnbset_l |
_wcsnset_l |
Gereksinimler
Yordam | Gerekli başlık |
---|---|
_strnset |
<string.h> |
_strnset_l |
<tchar.h> |
_wcsnset |
<string.h> veya <wchar.h> |
_wcsnset_l |
<tchar.h> |
_mbsnset , _mbsnset_l |
<mbstring.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Örnek
// crt_strnset.c
// compile with: /W3
#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( string, '*', 4 ); // C4996
// Note: _strnset is deprecated; consider using _strnset_s
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