_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l
Инициализация символы строки к определенному символу.Более безопасные версии этих функций существует; в разделе _strnset_s, _strnset_s_l, _wcsnset_s, _wcsnset_s_l, _mbsnset_s, _mbsnset_s_l.
Важно |
---|
_mbsnset и _mbsnset_l нельзя использовать в приложениях, выполняемых в среды выполнения Windows.Дополнительные сведения см. в разделе Функции CRT не поддерживаются при /ZW. |
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, по крайней мере, первые символы countstr имеет значение c (преобразованному значение char).Если count больше, чем длина str, то длина str используется вместо count.
_wcsnset и _mbsnset версии многобайтовой кодировки юникод и _strnset.Строковые аргументы и возвращаемое значение _wcsnset характерные черты; одно из строки _mbsnset многобайтовой кодировки.В остальных случаях эти три функции ведут себя идентично.
_mbsnset проверяет его параметры. если указатель str, обработчик вызывается недопустимого параметра, как описано в разделе Проверка параметров.Если среда выполнения может продолжить, то _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 );
}