Compartir a través de


strspn, wcsspn, _mbsspn, _mbsspn_l

Devuelve, en una cadena, el índice del primer carácter que no pertenece a un juego de caracteres.

Importante

_mbsspn y _mbsspn_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.

size_t strspn(
   const char *str,
   const char *strCharSet 
);
size_t wcsspn(
   const wchar_t *str,
   const wchar_t *strCharSet 
);
size_t _mbsspn(
   const unsigned char *str,
   const unsigned char *strCharSet 
);
size_t _mbsspn_l(
   const unsigned char *str,
   const unsigned char *strCharSet,
   _locale_t locale
);

Parámetros

  • str
    Cadena terminada en NULL que se va a buscar.

  • strCharSet
    Juego de caracteres terminado en NULL.

  • locale
    Configuración regional que se va a usar.

Valor devuelto

Devuelve un valor entero que especifica la longitud de la subcadena de str formada totalmente por caracteres de strCharSet*.* Si str empieza con un carácter que no está en strCharSet*,* la función devuelve 0.

Comentarios

La función strspn devuelve el índice del primer carácter de str que no pertenece al juego de caracteres de strCharSet. En la búsqueda no se incluyen los caracteres nulos de finalización.

wcsspn y _mbsspn son versiones de caracteres anchos y multibyte de strspn**.** Los argumentos de wcsspn son cadenas de caracteres anchos; los de _mbsspn son cadenas de caracteres multibyte. _mbsspn valida sus parámetros. Si str o strCharSet esNULL, se invoca el controlador de parámetros no válidos, como se describe en Validación de parámetros. Si la ejecución puede continuar, _mbspn establece errno en EINVAL y devuelve 0. strspn y wcsspn no validan sus parámetros. Estas tres funciones se comportan exactamente igual.

El valor de salida se ve afectado por el valor de la categoría LC_CTYPE de la configuración regional; vea setlocale para obtener más información. Las versiones de estas funciones sin el sufijo _l usan la configuración regional actual de su comportamiento dependiente de la configuración regional; las versiones con el sufijo _l son idénticas salvo que usan el parámetro locale pasado en su lugar. Para obtener más información, vea Configuración regional.

Asignaciones de rutina de texto genérico

Rutina TCHAR.H

_UNICODE y _MBCS no definidos

_MBCS definido

_UNICODE definido

_tcsspn

strspn

_mbsspn

wcsspn

no disponible

no disponible

_mbsspn_l

no disponible

Requisitos

Rutina

Encabezado necesario

strspn

<string.h>

wcsspn

<string.h> o <wchar.h>

_mbsspn, _mbsspn_l

<mbstring.h>

Para obtener más información sobre compatibilidad, vea Compatibilidad.

Ejemplo

// crt_strspn.c
// This program uses strspn to determine
// the length of the segment in the string "cabbage"
// consisting of a's, b's, and c's. In other words,
// it finds the first non-abc letter.
//

#include <string.h>
#include <stdio.h>

int main( void )
{
   char string[] = "cabbage";
   int  result;
   result = strspn( string, "abc" );
   printf( "The portion of '%s' containing only a, b, or c "
           "is %d bytes long\n", string, result );
}
  

Equivalente en .NET Framework

System::String::Substring

Vea también

Referencia

Manipulación de cadenas (CRT)

Configuración regional

Interpretación de secuencias de caracteres de varios bytes

_strspnp, _wcsspnp, _mbsspnp, _mbsspnp_l

strcspn, wcscspn, _mbscspn, _mbscspn_l

strncat, _strncat_l, wcsncat, _wcsncat_l, _mbsncat, _mbsncat_l

strncmp, wcsncmp, _mbsncmp, _mbsncmp_l

strncpy, _strncpy_l, wcsncpy, _wcsncpy_l, _mbsncpy, _mbsncpy_l

_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

strrchr, wcsrchr, _mbsrchr, _mbsrchr_l