C-standard-library-c-function-mbtowc
提供:Dev Guides
Cライブラリ関数-mbtowc()
説明
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 -これはマルチバイト文字の最初のバイトへのポインタです。
- n -これは、文字の長さをチェックする最大バイト数です。
戻り値
- strがNULLでない場合、mbtowc()関数はstrから始まる消費バイト数を返します。 s がNULLバイトを指す場合は0、失敗した場合は-1を返します。 *strがNULLの場合、mbtowc()関数は、エンコードに非自明なシフト状態がある場合はゼロ以外を返し、エンコードがステートレスの場合はゼロを返します。
例
次の例は、mbtowc()関数の使用法を示しています。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main () {
char* str = "This is finddevguides.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);
}
上記のプログラムをコンパイルして実行すると、次の結果が生成されます。これは、マルチバイトの一種のバイナリ出力になります。
???