_strspnp
, , _wcsspnp
_mbsspnp
_mbsspnp_l
Возвращает указатель на первый символ в заданной строке, которая не указана в другой заданной строке.
Внимание
Функции _mbsspnp
и _mbsspnp_l
не могут использоваться в приложениях, запускаемых в среде выполнения Windows. Дополнительные сведения: Функции CRT, которые не поддерживаются в приложениях универсальной платформы Windows.
Синтаксис
char *_strspnp(
const char *str,
const char *charset
);
wchar_t *_wcsspnp(
const unsigned wchar_t *str,
const unsigned wchar_t *charset
);
unsigned char *_mbsspnp(
const unsigned char *str,
const unsigned char *charset
);
unsigned char *_mbsspnp_l(
const unsigned char *str,
const unsigned char *charset,
_locale_t locale
);
Параметры
str
Строка для поиска, завершающаяся символом NULL.
charset
Набор символов, завершающийся символом NULL.
locale
Используемый языковой стандарт.
Возвращаемое значение
_strspnp
, _wcsspnp
и _mbsspnp
возвращает указатель на первый символ, str
который не принадлежит набору символов в charset
. Каждая из этих функций возвращаетсяNULL
, если str
состоит полностью из символов.charset
Для каждой из этих подпрограмм отсутствуют зарезервированные возвращаемые значения для указания ошибки.
Замечания
Функция _mbsspnp
возвращает указатель на многобайтовый символ, который является первым символом, str
который не принадлежит набору символов в charset
. Функция _mbsspnp
распознает последовательности многобайтовых символов в соответствии с текущей используемой многобайтовой кодовой страницей. Поиск не включает конечные символы NULL.
Если какой-либо str
или charset
является пустым указателем, эта функция вызывает обработчик недопустимых параметров, как описано в разделе "Проверка параметров". Если выполнение может быть продолжено, функция возвращает NULL
и устанавливает для параметра errno
значение EINVAL
.
По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.
Сопоставления подпрограмм универсального текста
Подпрограмма Tchar.h | _UNICODE и _MBCS не определен |
_MBCS Определенные |
_UNICODE Определенные |
---|---|---|---|
_tcsspnp |
_strspnp |
_mbsspnp |
_wcsspnp |
_strspnp
и _wcsspnp
— версии _mbsspnp
с однобайтовыми или расширенными символами. _strspnp
и _wcsspnp
ведет себя аналогично _mbsspnp
иначе; они предоставляются только для этого сопоставления и не должны использоваться по какой-либо другой причине. Дополнительные сведения см. в разделе "Использование универсальных текстовых сопоставлений и универсальных текстовых сопоставлений".
_mbsspnp_l
идентична указанной за исключением того, что использует языковой стандарт, переданный в качестве параметра. Дополнительные сведения см. в разделе Locale.
Требования
Маршрут | Обязательный заголовок |
---|---|
_mbsspnp |
<mbstring.h> |
_strspnp |
<tchar.h> |
_wcsspnp |
<tchar.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
Пример
// crt_mbsspnp.c
#include <mbstring.h>
#include <stdio.h>
int main( void ) {
const unsigned char string1[] = "cabbage";
const unsigned char string2[] = "c";
unsigned char *ptr = 0;
ptr = _mbsspnp( string1, string2 );
printf( "%s\n", ptr);
}
Выходные данные
abbage
См. также
Обработка строк
Локаль
Интерпретация последовательностей многобайтовых символов
strspn
, , wcsspn
_mbsspn
_mbsspn_l
strncat_s
, , _strncat_s_l
_wcsncat_s_l
wcsncat_s
_mbsncat_s
,_mbsncat_s_l
strncmp
, , wcsncmp
_mbsncmp
_mbsncmp_l
strncpy_s
, , _strncpy_s_l
_wcsncpy_s_l
wcsncpy_s
_mbsncpy_s
,_mbsncpy_s_l
_strnicmp
, , _wcsnicmp
_strnicmp_l
_mbsnicmp
_wcsnicmp_l
,_mbsnicmp_l
strrchr
, , wcsrchr
_mbsrchr
_mbsrchr_l