#define A 280// int#define B 280 U // unsigned int#define C 280L// long#define D 280LU// unsigned long#define K 28.0// double//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
Print(typename(A));
Print(typename(B));
Print(typename(C));
Print(typename(D));
Print(typename(K));
}
#define L 28.0 F // float//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
Print(typename(L));
}
#define A 280// int#define B 280 U // unsigned int#define C 280 LL // long#define D 280 LLU // unsigned long#define E 28.0// double#define F 28.0 f // float#define J '+'// char#define K B'111111111'// int//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+void OnStart()
{
Print(typename(A));
Print(typename(B));
Print(typename(C));
Print(typename(D));
Print(typename(E));
Print(typename(F));
Print(typename(J));
Print(typename(K));
}
なるほど、ここでの解釈は違うんですね。
やはり定数ではなく、マクロなんですね。
ありがとうございます。そのため、MACROやMACRO2と動作が同じです。
エンドユーザーにとっては、そう、2つのパラメータを持つ1つのマクロが使用されます。
スマートシェルC++コンパイラは何をするのですか?そうなんだ!明らかな誤植がある場合、および(1)行目の「x」が抜けている場合
- という警告が発生 します。しかも、OKのところでは何も表示されません!?
また、MQLコンパイラは何をするのですか?
必要なときや明らかな誤植があるときは黙っているが、必要ないときや問題がないときは警告が出る:'y'の宣言はメンバーを隠している
なぜ逆なのか?2632
ビジュアルテスト 中に一時停止すると、マウスのドラッグ&ドロップや矢印キーによるチャートのブラウズ(巻き戻し・巻き戻し)ができなくなります。
マクロの話題が盛り上がっているようですが、私もいくつか質問させてください。
なぜCとDにはintとuintが使われるのですか?
longとulongはどこで代用すべきか
それとも、コンパイラが賢くて280のサイズを感知して最適化するのでしょうか?
2つ目の質問です。
floatのコンパイルエラーは なぜですか?
3つ目の質問です。
マクロの話題が盛り上がっているようですが、私もいくつか質問させてください。
なぜCとDにintとuintが使われているのか?
longとulongはどこで代用すべきか
それとも、コンパイラが賢くて280のサイズを感知して最適化するのでしょうか?
2つ目の質問です。
floatのコンパイルエラーは なぜですか?
3つ目の質問です。
1.Lは長いけど、c++。LLを試してみてください。
はい、使えます。
しかし、文字型'+'は、2バイトの文字列サイズとしてushort
Fitsを表示します。
はい、成功しました。
しかし、文字型 '+' は ushort を示します。
これは、2バイトの文字列サイズとして設定 されます。
なぜ、そんなことをするのでしょうか?
バグなのか、虫なのか、なんなのか。
なぜ、そんなふうになるのでしょうか。
欠点というか、バグというか、そういうものがあるのでしょうか?
どうだろう。
もしかして、ユニコードのせい?
誰にもわからない。
もしかして、ユニコードのせい?