_strspnp
, _wcsspnp
, _mbsspnp
, _mbsspnp_l
Mengembalikan penunjuk ke karakter pertama dalam string tertentu yang tidak berada dalam string lain yang diberikan.
Penting
_mbsspnp
dan _mbsspnp_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
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
);
Parameter
str
Untai (karakter) yang dihentikan null untuk dicari.
charset
Set karakter yang dihentikan null.
locale
Lokal untuk digunakan.
Nilai hasil
_strspnp
, _wcsspnp
, dan _mbsspnp
kembalikan penunjuk ke karakter pertama di str
yang bukan milik kumpulan karakter di charset
. Masing-masing fungsi ini mengembalikan NULL
jika str
sepenuhnya terdiri dari karakter dari charset
. Untuk setiap rutinitas ini, tidak ada nilai pengembalian yang dicadangkan untuk menunjukkan kesalahan.
Keterangan
Fungsi mengembalikan _mbsspnp
penunjuk ke karakter multibyte yang merupakan karakter pertama dalam str
yang bukan milik kumpulan karakter dalam charset
. _mbsspnp
mengenali urutan karakter multibyte sesuai dengan halaman kode multibyte yang saat ini digunakan. Pencarian tidak termasuk mengakhiri karakter null.
Jika atau str
charset
adalah penunjuk null, fungsi ini memanggil handler parameter yang tidak valid, seperti yang dijelaskan dalam Validasi parameter. Jika eksekusi diizinkan untuk melanjutkan, fungsi mengembalikan NULL
dan mengatur errno
ke EINVAL
.
Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.
Pemetaan rutin teks generik
Rutinitas Tchar.h | _UNICODE dan _MBCS tidak ditentukan |
_MBCS Didefinisikan |
_UNICODE Didefinisikan |
---|---|---|---|
_tcsspnp |
_strspnp |
_mbsspnp |
_wcsspnp |
_strspnp
dan _wcsspnp
merupakan karakter byte tunggal dan versi karakter luas dari _mbsspnp
. _strspnp
dan _wcsspnp
berulah identik dengan _mbsspnp
sebaliknya; mereka disediakan hanya untuk pemetaan ini dan tidak boleh digunakan karena alasan lain. Untuk informasi selengkapnya, lihat Menggunakan pemetaan teks generik dan Pemetaan teks generik.
_mbsspnp_l
identik kecuali menggunakan parameter lokal yang diteruskan sebagai gantinya. Untuk informasi selengkapnya, lihat Lokal.
Persyaratan
Rutin | Header yang diperlukan |
---|---|
_mbsspnp |
<mbstring.h> |
_strspnp |
<tchar.h> |
_wcsspnp |
<tchar.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Contoh
// 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);
}
Hasil
abbage
Baca juga
Manipulasi string
Lokal
Interpretasi urutan karakter multibyte
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
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