ฟังก์ชันไลบรารี C int mbtowc(whcar_t *pwc, const char *str, size_t n) แปลงลำดับหลายไบต์เป็นอักขระแบบกว้าง
ต่อไปนี้เป็นการประกาศสำหรับฟังก์ชัน mbtowc()
int mbtowc(whcar_t *pwc, const char *str, size_t n)
พารามิเตอร์คือ −
-
pwc − นี่คือตัวชี้ไปยังวัตถุประเภท wchar_t
-
str − นี่คือตัวชี้ไปยังไบต์แรกของอักขระหลายไบต์
-
str − นี่คือตัวชี้ไปยังไบต์แรกของอักขระหลายไบต์
-
น −นี่คือจำนวนไบต์สูงสุดที่จะตรวจสอบความยาวของอักขระ
ค่าที่ส่งคืนคือ −
-
ถ้า str ไม่ใช่ NULL ฟังก์ชัน mbtowc() จะคืนค่าจำนวนไบต์ที่ใช้ไปโดยเริ่มที่ str หรือ 0 หาก s ชี้ไปที่ไบต์ว่าง หรือ -1 เมื่อเกิดความล้มเหลว
-
หาก str เป็นค่า NULL ฟังก์ชัน mbtowc() จะส่งกลับค่าที่ไม่ใช่ศูนย์ หากการเข้ารหัสมีสถานะการเปลี่ยนที่ไม่สำคัญ หรือศูนย์หากการเข้ารหัสเป็นแบบไร้สถานะ
ตัวอย่าง
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main () {
char *str = "This is tutorialspoint.com";
wchar_t mb[100];
int len;
len = mblen(NULL, MB_CUR_MAX);
mbtowc(mb, str, len*strlen(str) );
wprintf(L"%ls \n", mb );
return(0);
} ผลลัพธ์
???