_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l
지정 된 문자는 문자열의 문자를 초기화 합니다.보다 안전한 버전의이 함수를 있습니다. see _strnset_s, _strnset_s_l, _wcsnset_s, _wcsnset_s_l, _mbsnset_s, _mbsnset_s_l.
![]() |
---|
_mbsnset및 _mbsnset_l Windows 런타임에서 실행 되는 응용 프로그램에서 사용할 수 없습니다.자세한 내용은 /zw에 지원 되는 CRT 함수. |
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
);
매개 변수
str
변경 하려는 문자열입니다.c
문자 설정 합니다.count
문자 수를 설정할 수 있습니다.locale
사용 하는 로캘.
반환 값
바뀐된 문자열에 대 한 포인터를 반환 합니다.
설명
_strnset 함수를 설정, 최대, 첫 번째 count 자 str 에 c (변환 char).경우 count 의 길이 보다 큰 경우 str, 길이 str 대신 사용 됩니다 count.
_wcsnset및 _mbsnset 와이드 및 멀티 바이트 문자 버전의 _strnset.문자열 인수 및 반환 값을 _wcsnset 와이드 문자 문자열입니다. _mbsnset 멀티 바이트 문자 문자열입니다.이러한 세 가지 함수 그렇지에 동일 하 게 동작 합니다.
_mbsnset매개 변수의 유효성을 검사; 경우 str 는 null 포인터에 설명 된 대로 잘못 된 매개 변수 처리기를 호출 매개 변수 유효성 검사 .실행을 계속 하려면 허용 되는 경우 _mbsnset 는 NULL을 반환 하 고 설정 하는 errno 에 EINVAL._strnset및 _wcsnset 매개 변수의 유효성을 검사 하지 않습니다.
출력 값의 설정에 의해 영향을 받지는 LC_CTYPE 범주 설정 로케일입니다. 볼 setlocale 에 대 한 자세한 내용은.없이 이러한 함수 버전을 _l 접미사는 현재 로케일에 대 한이 로케일 종속 동작; 사용 버전으로는_l 접미사는 대신 전달 로캘 매개 변수를 사용 하는 경우를 제외 하 고 동일 합니다.자세한 내용은 로캘을 참조하십시오.
일반 텍스트 루틴 매핑
TCHAR입니다.H 루틴 |
_UNICODE 및 _Mbcs가 정의 되어 있지 않습니다 |
_Mbcs가 정의 |
_Unicode가 정의 |
---|---|---|---|
_tcsnset |
_strnset |
_mbsnbset |
_wcsnset |
_tcsnset_l |
_strnset_l |
_mbsnbset_l |
_wcsnset_l |
요구 사항
루틴 |
필수 헤더 |
---|---|
_strnset |
<string.h> |
_strnset_l |
<tchar.h> |
_wcsnset |
<string.h> 또는 <wchar.h> |
_wcsnset_l |
<tchar.h> |
_mbsnset, _mbsnset_l |
<mbstring.h> |
추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.
예제
// 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 );
}