エラー、バグ、質問 - ページ 1128 1...112111221123112411251126112711281129113011311132113311341135...3185 新しいコメント Artem Temnikov 2014.04.12 15:29 #11271 通常の」比較では、符号なし型に 与えられる。void OnStart() { ulong i=0; while(true) { if(i<ULONG_MAX) {i++;} //тут в условии так и остаётся тип ulong, преобразования к long не происходит else {break;} } } A100 2014.04.12 15:56 #11272 Fleder:じゃあ、どう説明するんだ。long t=0; bool comp=(ULONG_MAX-1>t); Print("comp = ",comp); //comp = true ビット単位の比較 - 矛盾はない。そして、ulong と long の比較は、long < 0 の場合のみ不正確です。 Artem Temnikov 2014.04.12 16:44 #11273 void OnStart() { long n=0; uint g=UINT_MAX; //for(int i=0;i<UINT_MAX;i++) {n++;} //здесь получаем бесконечный цикл и предупреждение expression is always true for(int i=0;i<g;i++) {n++;} //здесь получаем предупреждение sign mismatch и цикл в 4294967295 итераций Print("n = ",n); //n = 4294967295 } 最初のループの被検出式では、int型の変数とuint型の整数定数が比較される。が暗黙の型変換 を行わない場合、ビット単位の比較が行われる。この表現は常に真実である。2つ目のループでチェックされる式では、int型の変数とuint型の変数が比較される。への暗黙の変換が行われる。そして、i変数のオーバーフロー後:uint(-1)=4294967295を指定すると、式は偽になります。 Artem Temnikov 2014.04.12 23:42 #11274 時代の終わり(UNIX?) が8時間 遅れる。全タイプタイプサイズ(バイト)最小値最大値C++でアナログ時分80 (1970.01.01 0:00:00)32 535 244 799(3000.12.31 23:59:59)__time64_tvoid OnStart() { Print((datetime)32535244799); //3001.01.01 07:59:59 } vlad_123 2014.04.13 05:22 #11275 デベロッパーMQL文法の正式な説明を与えて、ブギーを探させる:-))) admoon 2014.04.13 06:00 #11276 簡単なこと: double min,max; i=Bars-1-period1; while(max-min==0) { min=Low[i]; max=High[i]; i++; }. TFについて。D1 と M4 ではデバッガが min=Low[i] という行を拒否し、端末が "ハングアップ" します。他のTFでは、この問題は存在しない。min=iLow();で置き換えても、何も起こりません。 ヒストリー、新しいMT4エディタ、私の頭の中のどこに「穴」があるのか、アドバイスをお願いします。 Vladimir Karputov 2014.04.13 06:05 #11277 admoon:シンプルなもの double min,max; i=Bars-1-period1; while(max-min==0) { min=Low[i]; max=High[i]; i++; }TFについて。D1 と M4 はデバッガが min=Low[i]; という行を拒否し、端末が "ハングアップ" します。他のTFでは、この問題は存在しない。min=iLow();の置換では、何も得られません。 歴史、新しいMT4エディタ、または私の頭の中のどこに「穴」があるのか、アドバイスをお願いします。フォーラムの投稿を作成する際に、「SRC」ボタンを 使用してコードを挿入してください。そうすることで、メッセージを読みやすくすることができます。 トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム このコードをMT5でコンパイルする方法 バラバシュカクフン 2014.04.09 11:09 MQL4からMQL5への移行についての 記事です。 A100 2014.04.13 09:18 #11278 Fleder:時代の終わり(UNIX?) が8時間 遅れる。 ヘルプに間違いがあるのではPrint( ulong(::StringToTime( "3000.12.31 23:59:59" ))); //32'535'215'999あるいは私たちが知らないことがある、誰かがここで手計算までしたと思うhttps://www.mql5.com/en/forum/16036 Artem Temnikov 2014.04.13 09:29 #11279 A100: どうやら、ヘルプのmax=32'535'215'999にエラーがあるようです。ただ、datetime型の 制限値が正しく定義されていないだけです。void OnStart() { Print((datetime)32535244799); //3001.01.01 07:59:59 Print((datetime)32535244800); //wrong datetime } A100 2014.04.13 09:34 #11280 Fleder:datetime 型の 制限値が正しく定義されていないだけです。 32'535'244'799 != 32'535'215'999 - どちらが正しいのでしょうか? 1...112111221123112411251126112711281129113011311132113311341135...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
通常の」比較では、符号なし型に 与えられる。
じゃあ、どう説明するんだ。
最初のループの被検出式では、int型の変数とuint型の整数定数が比較される。
が暗黙の型変換 を行わない場合、ビット単位の比較が行われる。この表現は常に真実である。
2つ目のループでチェックされる式では、int型の変数とuint型の変数が比較される。
への暗黙の変換が行われる。そして、i変数のオーバーフロー後:uint(-1)=4294967295
を指定すると、式は偽になります。
時代の終わり(UNIX?) が8時間 遅れる。
全タイプ
タイプ
サイズ(バイト)
最小値
最大値
C++でアナログ
時分
8
0 (1970.01.01 0:00:00)
32 535 244 799(3000.12.31 23:59:59)
__time64_t
デベロッパー
MQL文法の正式な説明を与えて、ブギーを探させる:-)))
簡単なこと:
double min,max;
i=Bars-1-period1;
while(max-min==0)
{
min=Low[i];
max=High[i];
i++;
}.
TFについて。D1 と M4 ではデバッガが min=Low[i] という行を拒否し、端末が "ハングアップ" します。他のTFでは、この問題は存在しない。min=iLow();で置き換えても、何も起こりません。 ヒストリー、新しいMT4エディタ、私の頭の中のどこに「穴」があるのか、アドバイスをお願いします。
シンプルなもの
TFについて。D1 と M4 はデバッガが min=Low[i]; という行を拒否し、端末が "ハングアップ" します。他のTFでは、この問題は存在しない。min=iLow();の置換では、何も得られません。 歴史、新しいMT4エディタ、または私の頭の中のどこに「穴」があるのか、アドバイスをお願いします。
フォーラムの投稿を作成する際に、「SRC」ボタンを 使用してコードを挿入してください。
そうすることで、メッセージを読みやすくすることができます。
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
このコードをMT5でコンパイルする方法
バラバシュカクフン 2014.04.09 11:09
MQL4からMQL5への移行についての 記事です。
時代の終わり(UNIX?) が8時間 遅れる。
あるいは私たちが知らないことがある、誰かがここで手計算までしたと思うhttps://www.mql5.com/en/forum/16036
どうやら、ヘルプのmax=32'535'215'999にエラーがあるようです。
ただ、datetime型の 制限値が正しく定義されていないだけです。
datetime 型の 制限値が正しく定義されていないだけです。