【MQL5】StringFill関数について

MQL5リファレンス
スポンサーリンク
スポンサーリンク

StringFill関数の働き・役割

StringFill関数は、指定された文字で文字列を埋めるための関数です。この関数は、文字列の全ての位置を特定の文字で埋めたい場合に使用します。

StringFill関数の引数について

StringFill関数は以下の引数を取ります。

bool StringFill(
   string& string_var,  // 埋められる文字列
   ushort character     // 文字列を埋めるための文字
);

string_var:埋められる文字列。これは入力と出力の両方に使用される文字列です。つまり、関数に渡すときには既に何らかの値が設定されており、その値を元に関数が処理を行い、処理結果を同じ変数に返します。
※このあたりの部分についてピンとこない方は以下の参照渡しに関する記事をご覧になってみてください。

  • character文字列を埋めるための文字。指定された文字が文字列全体を埋めます。

StringFill関数の戻り値について

StringFill関数は、操作が成功した場合にtrueを返し、失敗した場合にfalseを返します。失敗した場合の詳細なエラーコードは、GetLastError関数を使用して取得できます。

GetLastError関数の詳細は↓の記事をご参照ください。

StringFill関数を使う際の注意点

StringFill関数は、既存の文字列の内容を新しい文字で直接埋めます。新しい文字列を作成したり、コピーするための中間操作が不要なため、操作時間を節約できます。

StringFill関数を使ったサンプルコード

以下は、StringFill関数を使って文字列を特定の文字で埋めるサンプルコードです。

void OnStart()
{
    // 文字列変数の宣言
    string str;
    
    // StringInit関数を使用して、20文字の'_'で初期化
    StringInit(str, 20, '_');
    Print("初期化された文字列: ", str);  // 出力例: "____________________"
    
    // StringFill関数を使用して文字列を'0'で埋める
    StringFill(str, '0');
    Print("埋められた文字列: ", str, ": StringBufferLen(str) = ", StringBufferLen(str));  // 出力例: "00000000000000000000"
}

サンプルコードに使われた関数や文法要素の簡単な解説

<参照>

StringAdd関数/StringBufferLen関数/StringCompare関数/StringLen関数/StringConcatenate関数/StringInit関数/StringFind関数/StringGetCharacter関数/StringSetLength関数/StringReplace関数/StringReserve関数/StringSetCharacter関数/StringSplit関数/StringSubstr関数/StringToLower関数/StringToUpper関数/StringTrimLeft関数/StringTrimRight関数

タイトルとURLをコピーしました