Share via


_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 con /ZW.

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 pertenezca al conjunto de caracteres de charset*.* Cada una de estas funciones devuelve NULL si todos los caracteres de str están en charset*.* Para cada una de estas rutinas, no hay ningún valor devuelto reservado para indicar un error.

Comentarios

La función _mbsspnp 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. En la búsqueda no se incluyen los caracteres nulos de finalización.

Si str o charset es un puntero nulo, esta función invoca el 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.

Asignaciones de rutina 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. Por lo demás, _strspnp y _wcsspnp se comportan de forma idéntica a _mbsspnp. Se proporcionan solo para esta asignación y no se deben usar por ninguna otra razón. Para obtener más información, vea Usar asignaciones de texto genérico y Asignaciones de texto genérico.

_mbsspnp_les exactamente igual, salvo que usa el parámetro de configuración regional que se pasa. Para obtener más información, vea Configuración regional.

Requisitos

Rutina

Encabezado necesario

_mbsspnp

<mbstring.h>

_strspnp

<tchar.h>

_wcsspnp

<tchar.h>

Para obtener más información sobre compatibilidad, vea 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);
}

Resultados

abbage

Equivalente en .NET Framework

No es aplicable Para llamar a la función estándar de C, use PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.

Vea también

Referencia

Manipulación de cadenas (CRT)

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