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
Vea también
Referencia
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