C語言 庫函數(shù) wcstombs()
C語言 庫函數(shù) wcstombs()
C語言 標(biāo)準(zhǔn)庫 <stdlib.h>
C 庫函數(shù) size_t wcstombs(char *str, const wchar_t *pwcs, size_t n) 把寬字符字符串 pwcs 轉(zhuǎn)換為一個 str 開始的多字節(jié)字符串。最多會有 n 個字節(jié)被寫入 str 中。
1. 聲明
下面是 wcstombs() 函數(shù)的聲明。
size_t wcstombs(char *str, const wchar_t *pwcs, size_t n)
2. 參數(shù)
- str -- 指向一個 char 元素的數(shù)組,至少有 n 字節(jié)長。
- pwcs -- 要被轉(zhuǎn)換的寬字符字符串。
- n -- 要被寫入到 str 中的最大字節(jié)數(shù)。
3. 返回值
該函數(shù)返回轉(zhuǎn)換和寫入到 str 中的字節(jié)數(shù),不包括結(jié)尾的空字符。如果遇到一個無效的多字節(jié)字符,則返回 -1 值。
4. 實(shí)例
下面的實(shí)例演示了 wcstombs() 函數(shù)的用法。
#include <stdio.h> #include <stdlib.h> #define BUFFER_SIZE 50 int main() { size_t ret; char *MB = (char *)malloc( BUFFER_SIZE ); wchar_t *WC = L"http://www.codebaoku.cn"; /* 轉(zhuǎn)換寬字符字符串 */ ret = wcstombs(MB, WC, BUFFER_SIZE); printf("要轉(zhuǎn)換的字符數(shù) = %u\n", ret); printf("多字節(jié)字符 = %s\n\n", MB); return(0); }
讓我們編譯并運(yùn)行上面的程序,這將產(chǎn)生以下結(jié)果:
要轉(zhuǎn)換的字符數(shù) = 23 多字節(jié)字符 = http://www.codebaoku.cn
相關(guān)文章
- C++ 基本語法
- C++ 變量類型
- C++ 基本的輸入輸出
- C++ vector 用法
- C++ 編譯器
- C語言 變量
- C語言 共用體
- C語言 標(biāo)準(zhǔn)庫 <errno.h>
- C語言 標(biāo)準(zhǔn)庫 <stdarg.h>
- C語言 標(biāo)準(zhǔn)庫 <time.h>
- C# 不安全代碼
- C# 多線程
- C++ 拷貝構(gòu)造函數(shù)
- C++ 輸入輸出運(yùn)算符重載
- C語言 庫函數(shù) localtime()
- C語言 庫函數(shù) clock()
- C# 隊列(Queue)
- C# 交錯數(shù)組
- C# 傳遞數(shù)組給函數(shù)
- C# continue 語句