_strspnp
, _wcsspnp
, , _mbsspnp
, _mbsspnp_l
Devuelve un puntero al primer carácter de una cadena determinada que no está en otra cadena determinada.
Importante
_mbsspnp
y _mbsspnp_l
no se pueden usar en aplicaciones que se ejecutan en Windows en tiempo de ejecución. Para obtener más información, vea Funciones de CRT no admitidas en aplicaciones de la Plataforma universal de Windows.
Sintaxis
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
);
Parámetros
str
Cadena terminada en NULL que se va a buscar.
charset
Juego de caracteres terminado en NULL.
locale
Configuración regional que se va a usar.
Valor devuelto
_strspnp
, _wcsspnp
y _mbsspnp
devuelven un puntero al primer carácter de str
que no pertenece al conjunto de caracteres de charset
. Cada una de estas funciones devuelve NULL
si str
consta completamente de caracteres de charset
. Para cada una de estas rutinas, no hay ningún valor devuelto reservado para indicar un error.
Comentarios
La _mbsspnp
función devuelve un puntero al carácter multibyte que es el primer carácter de str
que no pertenece al conjunto de caracteres de charset
. _mbsspnp
reconoce las secuencias de caracteres multibyte de acuerdo con la página de códigos multibyte actualmente en uso. La búsqueda no incluye caracteres NULOs de terminación.
Si o str
charset
es un puntero nulo, esta función invoca al controlador de parámetros no válidos, como se describe en Validación de parámetros. Si la ejecución puede continuar, la función devuelve NULL
y establece en errno
en EINVAL
.
De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.
Asignaciones de rutinas de texto genérico
Rutina Tchar.h | _UNICODE y _MBCS no definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcsspnp |
_strspnp |
_mbsspnp |
_wcsspnp |
_strspnp
y _wcsspnp
son versiones de caracteres de un solo byte y caracteres anchos de _mbsspnp
. _strspnp
y _wcsspnp
se comportan de forma idéntica a _mbsspnp
otra; solo se proporcionan para esta asignación y no deben usarse por ningún otro motivo. Para obtener más información, consulte Uso de asignaciones de texto genérico y asignaciones de texto genérico.
_mbsspnp_l
es exactamente igual, salvo que usa el parámetro de configuración regional que se pasa. Para obtener más información, vea Locale.
Requisitos
Routine | Encabezado necesario |
---|---|
_mbsspnp |
<mbstring.h> |
_strspnp |
<tchar.h> |
_wcsspnp |
<tchar.h> |
Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Ejemplo
// 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);
}
Output
abbage
Consulte también
Manipulación de cadenas
Configuración regional
Interpretación de secuencias de caracteres de varios bytes
strspn
, wcsspn
, , _mbsspn
, _mbsspn_l
strncat_s
, _strncat_s_l
, wcsncat_s
, _wcsncat_s_l
, , _mbsncat_s
, _mbsncat_s_l
strncmp
, wcsncmp
, , _mbsncmp
, _mbsncmp_l
strncpy_s
, _strncpy_s_l
, wcsncpy_s
, _wcsncpy_s_l
, , _mbsncpy_s
, _mbsncpy_s_l
_strnicmp
, _wcsnicmp
, _mbsnicmp
, _strnicmp_l
, , _wcsnicmp_l
, _mbsnicmp_l
strrchr
, wcsrchr
, , _mbsrchr
, _mbsrchr_l