_strncnt
, _wcsncnt
, _mbsnbcnt
, _mbsnbcnt_l
, _mbsnccnt
, _mbsnccnt_l
Mengembalikan jumlah karakter atau byte dalam hitungan tertentu.
Penting
_mbsnbcnt
, , _mbsnbcnt_l
_mbsnccnt
, dan _mbsnccnt_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 _strncnt(
const char *str,
size_t count
);
size_t _wcsncnt(
const wchar_t *str,
size_t count
);
size_t _mbsnbcnt(
const unsigned char *str,
size_t count
);
size_t _mbsnbcnt_l(
const unsigned char *str,
size_t count,
_locale_t locale
);
size_t _mbsnccnt(
const unsigned char *str,
size_t count
);
size_t _mbsnccnt_l(
const unsigned char *str,
size_t count,
_locale_t locale
);
Parameter
str
String yang akan diperiksa.
count
Jumlah karakter atau byte yang akan diperiksa di str
.
locale
Lokal untuk digunakan.
Nilai hasil
_mbsnbcnt
dan _mbsnbcnt_l
mengembalikan jumlah byte yang ditemukan di karakter multibyte pertama count
dari str
. _mbsnccnt
dan _mbsnccnt_l
mengembalikan jumlah karakter yang ditemukan di byte pertama count
dari str
. Jika karakter null ditemui sebelum pemeriksaan str
selesai, karakter tersebut mengembalikan jumlah byte atau karakter yang ditemukan sebelum karakter null. Jika str
terdiri dari kurang dari count
karakter atau byte, mereka mengembalikan jumlah karakter atau byte dalam string. Jika count
kurang dari nol, mereka mengembalikan 0. Dalam versi sebelumnya, fungsi-fungsi ini memiliki nilai pengembalian jenis int
daripada size_t
.
_strncnt
mengembalikan jumlah karakter dalam byte pertama count
dari string str
byte tunggal . _wcsncnt
mengembalikan jumlah karakter dalam karakter lebar pertama count
dari string str
karakter lebar .
Keterangan
_mbsnbcnt
dan _mbsnbcnt_l
hitung jumlah byte yang ditemukan di karakter multibyte pertama count
dari str
. _mbsnbcnt
dan _mbsnbcnt_l
ganti mtob
dan harus digunakan sebagai pengganti mtob
.
_mbsnccnt
dan _mbsnccnt_l
hitung jumlah karakter yang ditemukan di byte pertama count
dari str
. Jika _mbsnccnt
dan _mbsnccnt_l
menemukan karakter null dalam byte kedua dari karakter byte ganda, byte pertama juga dianggap null dan tidak disertakan dalam nilai hitungan yang dikembalikan. _mbsnccnt
dan _mbsnccnt_l
ganti btom
dan harus digunakan sebagai pengganti btom
.
Jika str
adalah NULL
penunjuk atau adalah count
0, fungsi-fungsi ini memanggil handler parameter yang tidak valid seperti yang dijelaskan dalam Validasi parameter, errno
diatur ke EINVAL
, dan fungsi mengembalikan 0.
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
Rutin | _UNICODE dan _MBCS tidak ditentukan |
_MBCS Didefinisikan |
_UNICODE Didefinisikan |
---|---|---|---|
_tcsnbcnt |
_strncnt |
_mbsnbcnt |
_wcsncnt |
_tcsnccnt |
_strncnt |
_mbsnbcnt |
n/a |
_wcsncnt |
n/a | n/a | _mbsnbcnt |
_wcsncnt |
n/a | n/a | _mbsnccnt |
n/a | n/a | _mbsnbcnt_l |
_mbsnccnt_l |
Persyaratan
Rutin | Header yang diperlukan |
---|---|
_mbsnbcnt |
<mbstring.h> |
_mbsnbcnt_l |
<mbstring.h> |
_mbsnccnt |
<mbstring.h> |
_mbsnccnt_l |
<mbstring.h> |
_strncnt |
<tchar.h> |
_wcsncnt |
<tchar.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Contoh
// crt_mbsnbcnt.c
#include <mbstring.h>
#include <stdio.h>
int main( void )
{
unsigned char str[] = "This is a multibyte-character string.";
unsigned int char_count, byte_count;
char_count = _mbsnccnt( str, 10 );
byte_count = _mbsnbcnt( str, 10 );
if ( byte_count - char_count )
printf( "The first 10 characters contain %d multibyte characters\n", char_count );
else
printf( "The first 10 characters are single-byte.\n");
}
Hasil
The first 10 characters are single-byte.
Baca juga
Manipulasi string
Lokal
Interpretasi urutan karakter multibyte
_mbsnbcat
, _mbsnbcat_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