DoubleToString関数の役割・働き
DoubleToString関数はdouble型の数値を文字列情報に変換する関数です。
DoubleToString関数の引数について
DoubleToString関数の引数構成は以下の通りです。
string DoubleToString(
double value, // 数
int digits=8 // 小数点以下の桁数
);
DoubleToString関数は2つの引数を取ります
double value-文字列に変換したいdouble型の数値を記述します。
int digits-数値から文字列への変換時、「小数点以下の桁数をどれだけ表示するか」を制御するためのパラメータになります。初期値は「8」が設定されています。
つまり、第2引数への記述を省略した場合、小数点以下8桁までが表示される仕様になっています。
第2引数digitsパラメータの役割について
第2引数digits
は、入力する数値によって、文字列に変換時の表示状態が変わります
0から16の場合
digits
に0から16の整数を指定した場合、その数値は通常の数値表記(固定小数点表記)で、指定された桁数の小数点以下を持つ文字列に変換されます。- 例えば、DoubleToString
(123.456789, 2)
という呼び出しでは、123.45
という文字列が返されます。
-1から-16の場合
digits
に-1から-16の整数を指定した場合、その数値は科学記法で表され、指定された小数点以下の桁数を持つ文字列に変換されます。- 例えば、DoubleToString
(123.456789, -2)
という呼び出しでは、1.23e+2
(123を表す科学記法)という形式の文字列が返されます。
※科学記法は、非常に大きな数値や非常に小さな数値を簡潔に表現するための方法です。
科学記法についての詳細は↓の記事をご参照ください
それ以外の場合
digits
に上記以外の値を指定した場合、デフォルトで小数点以下8桁で数値が文字列に変換されます。
DoubleToString関数の戻り値について
DoubleToString関数の戻り値は、第2引数で指定した精度の表現に変換された文字列が返されます。
DoubleToString関数を使う際の注意点
- DoubleToString関数を使用する際には、表示したい桁数を正確に指定することが重要です。特に金融プログラミングでは、小数点以下の桁数が結果に大きな影響を及ぼすことがあります。
digits
パラメータに負の値を設定した場合、すなわち科学記法での表示は、非常に大きな数値や小さな数値を扱うときに役立ちますが、トレーディングのシステムではあまり一般的ではありません。
DoubleToString関数を使ったサンプルコード
以下の記述はDoubleToString関数を使ったサンプルコードです。
このコードでは、変数「number」
の値を文字列に変換してログ出力を行います。
void OnStart()
{
// 通常の数値を文字列に変換して出力する例
double number = 123.456789;
string text = DoubleToString(number, 2); // "123.45"という文字列を生成する
Print(text); // "123.45"を出力する
// 科学記法を使って数値を文字列に変換して出力する例
text = DoubleToString(number, -2); // "1.23e+2"という文字列を生成する
Print(text); // "1.23e+2"を出力する
// デフォルトの小数点以下の桁数で数値を文字列に変換して出力する例
text = DoubleToString(number); // "123.45678900"という文字列を生成する
Print(text); // "123.45678900"を出力する
}
//+------------------------------------------------------------------+
<参照>
・EnumToString関数/TimeToString関数/StringToTime関数
————————————————————————————–
※当サイトでは、プログラミング経験ゼロの方でも、プログラミングの基礎から学べる
をメインコンテンツとして展開しています。
第0回から、順を追って勉強していけばプログラミングの経験がなくてもMQL5を使って、MT5用のEAが作れるように書いています。最初は難しいと感じるかもしれませんが、繰り返し勉強していく事で自然とスキルが身についていくはずです。興味ある方は是非ご覧ください。