CharToStr関数、DoubleToStr関数、TimeToStr関数|各データ型から文字列型への変換

執筆者

佐川直弘(株式会社トリロジー取締役)

MetaTrader 4(MT4)のMQL4プログラムでは、各種データ型を文字列型に変換することで、データの表示やログの出力が容易になります。この記事では、初心者にもわかりやすく、Char型、Double型、日時型のデータを文字列型に変換する方法を解説します。

各データ型から文字列型への変換とは?

文字列型への変換とは、各種データ型(Char型、Double型、日時型)を人間が読みやすい形式の文字列に変換することです。これにより、プログラム内でのデータの表示やログ出力が簡単になります。

Char型の文字列変換

Char型のデータを文字列に変換するには、`CharToStr()`関数を使用します。この関数は、ASCIIキャラクターコードを対応する文字列に変換します。

関数仕様
string CharToStr(int char_code)
char_code
ASCIIキャラクターコード
サンプルコード
int char_code = 68; // 'D’のASCIIコード
string char_str = CharToStr(char_code);
Print(“文字列: " + char_str);

Double型の文字列変換

Double型のデータを文字列に変換するには、`DoubleToStr()`関数を使用します。この関数は、指定した小数点以下の桁数でDouble型の数値を文字列に変換します。

関数仕様
string DoubleToStr(double value, int digits)
value
変換する値
digits
文字列にする小数点以下の桁数(0~8)
サンプルコード
double value = 1.23456789;
string double_str = DoubleToStr(value, 5);
Print(“文字列: " + double_str);

日時型の文字列変換

日時型のデータを文字列に変換するには、`TimeToStr()`関数を使用します。この関数は、日時型を指定したフォーマットで文字列に変換します。

関数仕様
string TimeToStr(datetime value, int mode=TIME_DATE|TIME_MINUTES)
value
日時データ
mode
フォーマット(`TIME_DATE`、`TIME_MINUTES`、`TIME_SECONDS`)
サンプルコード
datetime current_time = TimeCurrent();
string time_str = TimeToStr(current_time, TIME_DATE | TIME_SECONDS);
Print(“現在の日時: " + time_str);

上記のサンプルコードを実行すると、以下のような結果が得られます。

実行結果
文字列: D
文字列: 1.23457
現在の日時: 2024.07.07 12:30:45

まとめ

各種データ型を文字列型に変換することで、データの表示やログの出力が簡単になります。MQL4プログラムでは、`CharToStr()`、`DoubleToStr()`、`TimeToStr()`の各関数を使用して、Char型、Double型、日時型のデータを文字列型に変換することができます。これらの基本的な使い方を理解することで、プログラムのデバッグやデータの表示がより簡単になります。初心者の方も、まずはこれらの関数の使い方を学び、実際のトレードプログラムに応用してみてください。

MQL4

Posted by 佐川直弘