Bagikan melalui


strspn, wcsspn, _mbsspn, _mbsspn_l

Mengembalikan indeks karakter pertama dalam string yang bukan milik sekumpulan karakter tertentu.

Penting

_mbsspn dan _mbsspn_l tidak dapat digunakan dalam aplikasi yang dijalankan di Windows Runtime. Untuk informasi selengkapnya, lihat Fungsi CRT yang tidak didukung di aplikasi Platform Windows Universal.

Sintaks

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
);

Parameter

str
Untai (karakter) yang dihentikan null untuk dicari.

strCharSet
Set karakter yang dihentikan null.

locale
Lokal untuk digunakan.

Nilai hasil

Mengembalikan nilai bilangan bulat yang menentukan panjang substring yang str sepenuhnya terdiri dari karakter dalam strCharSet. Jika str dimulai dengan karakter yang tidak ada di strCharSet, fungsi mengembalikan 0.

Keterangan

Fungsi strspn mengembalikan indeks karakter pertama di str yang bukan milik kumpulan karakter dalam strCharSet. Pencarian tidak termasuk mengakhiri karakter null.

wcsspn dan _mbsspn adalah versi karakter lebar dan multibyte-character dari strspn. Argumen adalah wcsspn string karakter lebar. Argumen adalah _mbsspn string multibyte-character. _mbsspn memvalidasi parameternya. Jika str atau strCharSet adalah NULL, handler parameter yang tidak valid dipanggil, seperti yang dijelaskan dalam Validasi parameter . Jika eksekusi diizinkan untuk melanjutkan, _mbspn atur errno ke EINVAL dan mengembalikan 0. strspn dan wcsspn tidak memvalidasi parameternya. Ketiga fungsi ini berulah secara identik jika tidak.

Nilai output dipengaruhi oleh pengaturan LC_CTYPE pengaturan kategori lokal. Untuk informasi selengkapnya, lihat setlocale . Versi fungsi-fungsi ini tanpa _l akhiran menggunakan lokal saat ini untuk perilaku tergantung lokal ini; versi dengan _l akhiran identik kecuali bahwa mereka menggunakan parameter lokal yang diteruskan sebagai gantinya. Untuk informasi selengkapnya, lihat Lokal.

Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.

Pemetaan rutin teks generik

TCHAR. Rutinitas H _UNICODE dan _MBCS tidak ditentukan _MBCS Didefinisikan _UNICODE Didefinisikan
_tcsspn strspn _mbsspn wcsspn
n/a n/a _mbsspn_l n/a

Persyaratan

Rutin Header yang diperlukan
strspn <string.h>
wcsspn <string.h> atau <wchar.h>
_mbsspn, _mbsspn_l <mbstring.h>

Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.

Contoh

// 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 );
}
The portion of 'cabbage' containing only a, b, or c is 5 bytes long

Baca juga

Manipulasi string
Lokal
Interpretasi urutan karakter multibyte
_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