鍍金池/ 教程/ C/ mblen() - C語言庫函數(shù)
qsort() - C語言庫函數(shù)
strxfrm() - C語言庫函數(shù)
difftime() - C語言庫函數(shù)
isdigit() - C函數(shù)
<limits.h> - C語言標準庫
ldiv() - C語言庫函數(shù)
printf() - C語言庫函數(shù)
sin() - C函數(shù)
freopen() - C語言庫函數(shù)
NULL - C函數(shù)
mktime() - C語言庫函數(shù)
floor() - C函數(shù)
log() - C函數(shù)
rewind() - C語言庫函數(shù)
memcpy() - C語言庫函數(shù)
remove() - C語言庫函數(shù)
localtime() - C語言庫函數(shù)
strcoll() - C語言庫函數(shù)
fgets() - C語言庫函數(shù)
errno - C語言宏
<stdlib.h> - C語言標準庫
labs() - C語言庫函數(shù)
putchar() - C語言庫函數(shù)
wcstombs() - C語言庫函數(shù)
fclose() - C庫函數(shù)
system() - C語言庫函數(shù)
strncmp() - C語言庫函數(shù)
va_end() - C函數(shù)
setlocale() - C函數(shù)
strpbrk() - C語言庫函數(shù)
acos() - C函數(shù)
fabs() - C函數(shù)
asctime() - C語言庫函數(shù)
offsetof() - C函數(shù)
cos() - C函數(shù)
atoi() - C語言庫函數(shù)
strftime() - C語言庫函數(shù)
va_arg() - C函數(shù)
strstr() - C語言庫函數(shù)
<errno.h> - C語言標準庫
memchr() - C語言庫函數(shù)
fopen() - C語言庫函數(shù)
va_start() - C函數(shù)
fprintf() - C語言庫函數(shù)
strrchr() - C語言庫函數(shù)
<time.h> - C語言標準庫
C語言標準庫
isgraph() - C函數(shù)
srand() - C語言庫函數(shù)
isprint() - C函數(shù)
fputs() - C語言庫函數(shù)
sscanf() - C語言庫函數(shù)
getc() - C語言庫函數(shù)
<stdarg.h> - C語言標準庫
rename() - C語言庫函數(shù)
rand() - C語言庫函數(shù)
strspn() - C語言庫函數(shù)
frexp() - C函數(shù)
bsearch() - C語言庫函數(shù)
islower() - C函數(shù)
fwrite() - C語言庫函數(shù)
ispunct() - C函數(shù)
vsprintf() - C語言庫函數(shù)
strcspn() - C語言庫函數(shù)
fgetpos() - C庫函數(shù)
getchar() - C語言庫函數(shù)
tmpfile() - C語言庫函數(shù)
mbtowc() - C語言庫函數(shù)
sprintf() - C語言庫函數(shù)
ftell() - C語言庫函數(shù)
feof() - C庫函數(shù)
mblen() - C語言庫函數(shù)
clearerr() - C庫函數(shù)
modf() - C函數(shù)
strncat() - C語言庫函數(shù)
isspace() - C函數(shù)
ctime() - C語言庫函數(shù)
tmpnam() - C語言庫函數(shù)
isupper() - C函數(shù)
atol() - C語言庫函數(shù)
gets() - C語言庫函數(shù)
<setjmp.h> - C語言標準庫
perror() - C語言庫函數(shù)
exit() - C語言庫函數(shù)
memmove() - C語言庫函數(shù)
isalpha() - C函數(shù)
fsetpos() - C語言庫函數(shù)
fmod() - C函數(shù)
<float.h> - C語言標準庫
strtok() - C語言庫函數(shù)
wctomb() - C語言庫函數(shù)
strcat() - C語言庫函數(shù)
atof() - C語言庫函數(shù)
strchr() - C語言庫函數(shù)
<locale.h> - C語言標準庫
signal() - C函數(shù)
ungetc() - C語言庫函數(shù)
ferror() - C庫函數(shù)
C語言標準庫
strtoul() - C語言庫函數(shù)
fseek() - C語言庫函數(shù)
fscanf() - C語言庫函數(shù)
mbstowcs() - C語言庫函數(shù)
longjmp() - C函數(shù)
localeconv() - C函數(shù)
raise() - C函數(shù)
ceil() - C函數(shù)
<string.h> - C語言標準庫
free() - C語言庫函數(shù)
setvbuf() - C語言庫函數(shù)
atan() - C函數(shù)
C函數(shù)庫宏 assert()
<stdio.h> - C語言標準庫
fread() - C語言庫函數(shù)
vfprintf() - C語言庫函數(shù)
isxdigit() - C函數(shù)
toupper() - C函數(shù)
<ctype.h> - C語言標準庫
setjmp() - C函數(shù)
ldexp() - C函數(shù)
EDOM - C語言宏
strlen() - C語言庫函數(shù)
tolower() - C函數(shù)
clock() - C語言庫函數(shù)
fflush() - C庫函數(shù)
fgetc() - C語言庫函數(shù)
<stddef.h> - C語言標準庫
div() - C語言庫函數(shù)
<math.h> - C語言標準庫
isalnum() - C函數(shù)
memset() - C語言庫函數(shù)
calloc() - C語言庫函數(shù)
vprintf() - C語言庫函數(shù)
sqrt() - C函數(shù)
<assert.h> - C語言標準庫
time() C語言
atexit() - C語言庫函數(shù)
memcmp() - C語言庫函數(shù)
setbuf() - C語言庫函數(shù)
iscntrl() - C函數(shù)
abs() - C語言庫函數(shù)
abort() - C語言庫函數(shù)
exp() - C函數(shù)
realloc() - C語言庫函數(shù)
puts() - C語言庫函數(shù)
scanf() - C語言庫函數(shù)
malloc() - C語言庫函數(shù)
strerror() - C語言庫函數(shù)
strtol() - C語言庫函數(shù)
ERANGE - C語言宏
sinh() - C函數(shù)
atan2() - C函數(shù)
putc() - C語言庫函數(shù)
asin() - C函數(shù)
strcpy() - C語言庫函數(shù)
fputc() - C語言庫函數(shù)
getenv() - C語言庫函數(shù)
pow() - C函數(shù)
tanh() - C函數(shù)
gmtime() - C語言庫函數(shù)
strtod() - C語言庫函數(shù)
log10() - C函數(shù)
strcmp() - C語言庫函數(shù)
<signal.h> - C語言標準庫

mblen() - C語言庫函數(shù)

C庫函數(shù) int mblen(const char *str, size_t n) 返回參數(shù)str指向多字節(jié)字符的長度。

聲明

以下是 mblen() 函數(shù)的聲明。

int mblen(const char *str, size_t n)

參數(shù)

  • str -- 這是多字節(jié)字符的第一個字節(jié)的指針。

  • n -- 這是要檢查的字符長度的最大數(shù)目的字節(jié)。

返回值

mblen()函數(shù)返回解析多字節(jié)序列由str開始,如果一個非空寬字符被確認的字節(jié)數(shù)。它返回0,如果一個空寬字符被確認。返回-1,如果遇到無效的多字節(jié)序列,或者如果它不能解析一個完整的多字節(jié)字符。

例子

下面的例子顯示 mblen() 函數(shù)的用法。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
   int len;
   char *pmbnull  = NULL;
   char *pmb = (char *)malloc( MB_CUR_MAX );
   wchar_t *pwc = L"Hi";
   wchar_t *pwcs = (wchar_t *)malloc( sizeof( wchar_t ));

   printf("Converting to multibyte string
");
   len = wcstombs( pmb, pwc, MB_CUR_MAX);
   printf("Characters converted %d
", len);
   printf("Hex value of first multibyte character: %#.4x
", pmb);
   
   len = mblen( pmb, MB_CUR_MAX );
   printf( "Length in bytes of multibyte character %x: %u
", pmb, len );
   
   pmb = NULL;
   
   len = mblen( pmb, MB_CUR_MAX );
   printf( "Length in bytes of multibyte character %x: %u
", pmb, len );
   
   return(0);
}

讓我們編譯和運行上面的程序,這將產(chǎn)生以下結(jié)果:

Converting to multibyte string
Characters converted 1
Hex value of first multibyte character: 0x168c6010
Length in bytes of multibyte character 168c6010: 1
Length in bytes of multibyte character 0: 0