floatをconst char *に変換するC++関数を記述したい。この関数では、出力値が表すべき小数点以下の桁数を指定する引数が渡されます。私はこの機能を思いついたし、うまく機能する。小数点以下の浮動小数点数を設定する
私はこの機能を書いた方がいいですか?
static const char* getString(float value, int decimalPlaces)
{
char strValue[sizeof value];
sprintf(strValue, "%.%df", value, decimalPlaces);
return strValue;
}
'sizeof value'は' float'を表すのに使われるバイト数です。これは 'sprintf'では不十分かもしれません。ローカル配列へのポインタを返します。ローカル配列は、使用前に終了します。 – aschepler