目次 - SDL 3.0 API(機能別) - 標準ライブラリ - SDL_UCS4ToUTF8

SDL_UCS4ToUTF8

1つのUnicodeコードポイントをUTF-8に変換する

ヘッダ

SDL3/SDL_stdinc.h

構文

char * SDL_UCS4ToUTF8(Uint32 codepoint, char *dst);

引数

Uint32codepointUTF-8に変換するUnicodeコードポイント
char *dst変換したUTF-8の書き込み先へのポインタ. 少なくとも4バイトが必要である

戻り値

(char *) 新しく書き込まれたUTF-8シーケンスの次のバイトへのポインタを戻す.

詳細

この関数は1から4バイトの出力を生成する可能性があるため, dstが示すバッファには少なくとも4バイトが必要である.

この関数は, 新しくUTF-8シーケンスを書き込んだ後に, 次のバイトへのポインタを戻す. これはループ内で複数のコードポイントを変換する場合や, NUL終端文字を書き込む場合に便利である(これらの場合, 4バイト超のバッファが必要となる).

codepointが無効な値の場合(Unicodeの範囲外, UTF-16サロゲートの値など), そのコードポイントの代わりにU+FFFD(置換文字)が使われ, エラーにはならない.

dstがNULLの場合, この関数はエラーとせず, ポインタには何も書き込まず即座にNULLを戻す.

スレッドセーフ

この関数はどのスレッドからも安全に呼べる.

バージョン

SDL 3.2.0以降

SDL Wikiへのリンク

SDL_UCS4ToUTF8 - SDL Wiki