どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 593

 

私はDLLの使い方ではダミー以下なので、あえてここで質問します。現在のビルドでWinExec("shutdown /r", 0) を正しくフォーマットする方法を教えていただけませんか?

必ずしもシャットダウンするわけではなく、今のところ全く何も動かせません。

ありがとうございます。

 
よし、見つけたぞ
 

オプションとして、ありがとうございます。正常化を考えると、なぜこのようなことが起こるのか、まだ理解できないが。

もう一つの可能な解決策は、もし誰かがそれを必要とするならば、私はdoubleをintに変換した。必要な精度があらかじめわかっているので。

 

こんにちは。EA内のif文の行が実行されない

Alert("sell_stop_open= ", sell_stop_open, " Middle= ", Middle);

if (sell_stop_open != Middle)

{

アラート(「sell_stop_open= Middle」)。

L=L2です。

int ticket3=OrderSend(Symb, OP_SELLSTOP, L, Middle, 2, Maximum+4*Point,Minimum_30, Com, Magic)とする。

}

アラートメッセージが出る前にsell_stop_open=1.3080, Middle =1.3080の値が表示されても実行されないのですが。

このようなエラーが発生する原因について教えてください。

 
Garik27p:

こんにちは。EA内のif文の行が実行されない

Alert("sell_stop_open= ", sell_stop_open, " Middle= ", Middle);

if (sell_stop_open != Middle)

{

アラート(「sell_stop_open= Middle」)。

L=L2です。

int ticket3=OrderSend(Symb, OP_SELLSTOP, L, Middle, 2, Maximum+4*Point,Minimum_30, Com, Magic)とする。

}

アラートメッセージが出る前にsell_stop_open=1.3080, Middle =1.3080の値が表示されても実行されないのですが。

このようなエラーが発生する原因について教えてください。


それ以外は。
if (sell_stop_open == Middle)
 
r772ra:

それ以外は。
私もその方法で試してみました。しかし、テスター上で動くと、動くときと動かないときがあるんです。
 
Desead:

オプションとして、ありがとうございます。 正常化を考えると、なぜこのような ことが起こるのか、まだ理解できないが。

もう一つの可能な解決策は、もし誰かがそれを必要とするならば、私はdoubleをintに変換した。必要な精度があらかじめわかっているので。

2倍 数値には特有の性質があるため、テキスト値に変換する場合はDoubleToString(MQL4新言語の関数)またはDoubleToStr(旧言語の関数)を使用します。これらの関数は,数値を, 指定された精度での文字表現を含むテキスト文字 列に変換する。

MQL4でダブルタイプの数値を扱う際の特殊性」を読まれることをお勧めします。また、フォーラムでは、より詳細な情報を検索することが可能です。

P./S.:私は、ダブルを 見る必要があるときに、intで ダブルを 訳すという変形は適切な決定ではないと思います。

 
Garik27p:
私もその方法で試してみました。しかし、テスター上で動くと、動くときと動かないときがあるんです。

ここに、その答えが ある。
 
r772ra:
そこに、答えが ある。


ありがとうございます!!!
 
Desead:
追伸:念のため、NormalizeDoubleの ヘルプの「Note」にもご質問に対する回答が一部あることを記載しておきます。

私自身、以前はDoubleToSを入力するのを忘れていました...。...そして、ドットの後にあるたくさんの数字を不思議に思った。:)