strcspn
, wcscspn
, _mbscspn
, _mbscspn_l
Mengembalikan indeks kemunculan pertama dalam string, dari karakter yang termasuk dalam sekumpulan karakter.
Penting
_mbschr
dan _mbschr_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 strcspn(
const char *str,
const char *strCharSet
);
size_t wcscspn(
const wchar_t *str,
const wchar_t *strCharSet
);
size_t _mbscspn(
const unsigned char *str,
const unsigned char *strCharSet
);
size_t _mbscspn_l(
const unsigned char *str,
const unsigned char *strCharSet,
_locale_t locale
);
Parameter
str
String pencarian null-terminated.
strCharSet
Set karakter yang dihentikan null.
locale
Lokal untuk digunakan.
Nilai hasil
Fungsi-fungsi ini mengembalikan indeks karakter pertama dalam str
yang ada di strCharSet
. Jika tidak ada karakter dalam str
strCharSet
, maka nilai yang dikembalikan adalah panjang .str
Tidak ada nilai pengembalian yang dicadangkan untuk menunjukkan kesalahan.
Keterangan
wcscspn
dan _mbscspn
adalah versi karakter lebar dan multibyte-character dari strcspn
. Argumen adalah wcscspn
string karakter lebar. Argumen dan nilai yang dikembalikan adalah _mbscspn
string multibyte-character.
_mbscspn
memvalidasi parameternya. Jika atau str
strCharSet
adalah penunjuk null, handler parameter yang tidak valid dipanggil, seperti yang dijelaskan dalam Validasi parameter. Jika eksekusi diizinkan untuk melanjutkan, fungsi mengembalikan 0 dan diatur errno
ke EINVAL
. strcspn
dan wcscspn
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 |
---|---|---|---|
_tcscspn |
strcspn |
_mbscspn |
wcscspn |
Persyaratan
Rutin | Header yang diperlukan |
---|---|
strcspn |
<string.h> |
wcscspn |
<string.h> atau <wchar.h> |
_mbscspn , _mbscspn_l |
<mbstring.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Contoh
// crt_strcspn.c
#include <string.h>
#include <stdio.h>
void test( const char * str, const char * strCharSet )
{
int pos = strcspn( str, strCharSet );
printf( "strcspn( \"%s\", \"%s\" ) = %d\n", str, strCharSet, pos );
}
int main( void )
{
test( "xyzbxz", "abc" );
test( "xyzbxz", "xyz" );
test( "xyzbxz", "no match" );
test( "xyzbxz", "" );
test( "", "abc" );
test( "", "" );
}
strcspn( "xyzbxz", "abc" ) = 3
strcspn( "xyzbxz", "xyz" ) = 0
strcspn( "xyzbxz", "no match" ) = 6
strcspn( "xyzbxz", "" ) = 6
strcspn( "", "abc" ) = 0
strcspn( "", "" ) = 0
Baca juga
Manipulasi string
Lokal
Interpretasi urutan karakter multibyte
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
strspn
, wcsspn
, _mbsspn
, _mbsspn_l
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk