_strset, _strset_l, _wcsset, _wcsset_l, _mbsset, _mbsset_l
Задает символы строки на символ.Существуют более безопасные версии этих функций; см. раздел _strset_s, _strset_s_l, _wcsset_s, _wcsset_s_l, _mbsset_s, _mbsset_s_l.
Важно |
---|
_mbsset и _mbsset_l нельзя использовать в приложениях, выполняемых в Среда выполнения Windows.Дополнительные сведения см. в разделе Функции CRT не поддерживаются при /ZW. |
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
);
Параметры
str
Объединения завершенной строка, настройку.c
Параметр символов.locale
Языковой стандарт, который необходимо использовать.
Возвращаемое значение
Возвращает указатель на измененной строке.
Заметки
Функция _strset устанавливает все символы (за исключением конечное нуля-символа) str в c, преобразованного в char._wcsset и _mbsset_l версии многобайтовой кодировки юникод и _strset и типы данных аргументов и возвращаемых значений от соответственно.В остальном эти функции ведут себя идентично.
_mbsset проверяет свои параметры.Если указатель str, обработчик вызывается недопустимого параметра, как описано в разделе Проверка параметров.Если среда выполнения может продолжить, то _mbsset возвращает NULL и задает для errno значение EINVAL._strset и _wcsset не проверяют свои параметры.
Выходное значение зависеть на параметром параметра категории LC_CTYPE языкового стандарта; дополнительные сведения см. в разделе setlocale, _wsetlocale.Версии этих функций идентичны, за исключением того, что один, не имеющие помощью суффикса _l текущий языковой стандарт и один, имеют суффикс _l вместо этого использовать параметры языкового стандарта, который передается в.Для получения дополнительной информации см. Языковой стандарт.
Примечание по безопасности |
---|
Эти функции могут быть подвержены угрозам переполнения буфера.Переполнение буфера можно использовать для атак системы, поскольку они могут привести к произвольное повышение прав доступа.Дополнительные сведения см. в разделе Как избежать переполнения буфера. |
Универсальное текстовое сопоставление функций
Функция TCHAR.H |
неопределенные _UNICODE & _MBCS |
определенные _MBCS |
Определение _UNICODE |
---|---|---|---|
_tcsset |
_strset |
_mbsset |
_wcsset |
_tcsset_l |
_strset_l |
_mbsset_l |
_wcsset_l |
Требования
Функция |
Требуемый заголовок |
---|---|
_strset |
<string.h> |
_strset_l |
<tchar.h> |
_wcsset |
<string.h> или <wchar.h> |
_wcsset_l |
<tchar.h> |
_mbsset, _mbsset_l |
<mbstring.h> |
Для дополнительных данных о совместимости см. в разделе Совместимость.
Пример
// 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 );
}
Эквивалент в .NET Framework
Неприменимо. Для вызова стандартной функции C используйте PInvoke. Для получения дополнительной информации см. Примеры вызовов неуправляемого кода.
См. также
Ссылки
Интерпретация последовательностей многобайтового символов
_strnset, _strnset_l, _wcsnset, _wcsnset_l, _mbsnset, _mbsnset_l