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

SDL_asprintf

asprintf()と同機能だがCランタイムを必要としない関数

ヘッダ

SDL3/SDL_stdinc.h

構文

int SDL_asprintf(char **strp, const char *fmt, ...);

引数

char **strp出力. 新しい文字列が設定される. NULL不可
const char *fmtprintfスタイルの文字列. NULL不可
......fmt文字列の%トークンと一致する任意の引数

戻り値

(int) 新しく確保された文字列のバイト数を戻す. 終端のNUL文字の分は含まれない. 失敗のとき負の数を戻す.

詳細

機能はSDL_snprintf()と同じだが, 出力文字列を格納するのに十分な大きさのバッファを呼び出し側の代わりに確保する.

成功すると, この関数は出力文字列の終端文字を含まないバイト数(文字数ではない)を戻し, *strpには新しく確保された文字列を戻す.

エラーのとき, この関数は負の数を戻し, *strpの値は未定義となる.

戻された文字列は呼び出し側の管理となる. 不要になった場合はSDL_freeに渡す必要がある.

スレッドセーフ

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

バージョン

SDL 3.2.0以降

SDL Wikiへのリンク

SDL_asprintf - SDL Wiki