char * SDL_UCS4ToUTF8(Uint32 codepoint, char *dst);
| Uint32 | codepoint | UTF-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を戻す.
この関数はどのスレッドからも安全に呼べる.