恥は/dev/nullへ by 初心者

プログラミング素人がのろのろと学んだことをつづっています♪

2020-07-01から1ヶ月間の記事一覧

このelseの相手はだ~れ?

以下のインデントがおかしなコードをご覧ください。 #include <stdio.h> int main(void) { int a, b; a = 1; b = 0; if (a) if (b) printf("aもbも真アルよ"); else printf("aは真だけどbは偽アルよ"); return 0; } printf文の中に記述した文言を読んでしまうと答えが</stdio.h>…

getcharとgetcheの戻り値はint型らすぃ

getcharもgetcheも文字を扱う関数ですが、書籍によると戻り値はint型と書かれています。「char型じゃないんか!」と少し驚きつつ、調べてみました。 C言語学習はVisual Studio Community 2019で行っているので、MicroSoft社のページを調べてみました。 以下…

文字は数値であることの再確認(char型、int型)

アルファベット等の文字は内部的には数字で表現されているという話を聞いたことがあると思います。 文字が数字で表現されているから、その値(数値)を増やしたり減らしたりすることで、画面に出力する文字を変えることができるという理屈になります。 なお…

getchar関数と getche関数の違い(その2)

getchar関数の挙動を調べていて「はて?」と思うことがあったので、メモしておきます。 前回の記事に書いたことをきちんと理解していれば気づけたはずですが、気づかなかったのは私がぬるいせいです・・・orz。 環境 Microsoft Visual Studio Community 2019…

getchar関数と getche関数の違い(その1)

今回はgetchar関数とgetche関数の違いに関するメモです(さりげなく _getche関数も登場しますが)。 環境 Microsoft Visual Studio Community 2019 Version 16.6.5 Windows 10 Pro Version 1903 getchar関数を使ってみました #include <stdio.h> int main(void) { cha</stdio.h>…

データ型の範囲(Visual Studio Community 2019)

[この記事は単なるメモです] データ型の範囲に関するMicrosoft社のページ 整数型 https://docs.microsoft.com/ja-jp/cpp/c-language/cpp-integer-limits?view=vs-2019 浮動小数点型 https://docs.microsoft.com/ja-jp/cpp/c-language/limits-on-floating-poi…

VLDMIの計算に必要なローソク足の本数

この記事は、先日の記事(2020年7月14日)に載せた修正版eVLDMI関数を前提にして書いています。 MT4用のインディケーター等を作成する場合、値の計算に必要なローソク足の本数を予め除外しますよね。たとえば、以下のコードにおける counted_bars をイメージ…

MQLの列挙型(enum)

MT4用のインディケーター等を作っていると、特定の機能のONとOFFを切り替えたい場面があると思います。これをパラメーターに反映する時、今まではbool型を使って true または false を選ぶようにしていました。 しかし、自分以外の人が使うインディケーター…

MT4でチャート画面のスクリーンショットを撮る

この記事では、チャート画面のスクリーンショットを撮る自作関数のコードにコメントを書き加えたものを掲載しています。 なお、スクリーンショットは、自分のトレードを振り返る時に使っています。 3つの引数 第1引数と第2引数は、スクリーンショット画像の…

科学的表記法 ~ float型(MQL4)の最大値はいくつ?~

MQL4のヘルプで float型の最大値を調べると 3.402823466e+38 と書かれています。最初、この表記を見た時、意味が分かりませんでした。 ネットで調べた情報に基づいて解釈すると、「3.402823466e+38」は 3.402823466 × 10の38乗 のようです。 わざと冗長に書…

続・MQLの判定文はC言語と同じように動くのか?

前回の記事で行った実験から、MQL4の判定文について、C言語と同様に0以外は「真」として扱われることが分かりました。 そこで、0が「偽」として扱われることをfor文に利用できるか実験してみました。 for文の実験結果 void OnStart(){ for(int i = 3; i; i--…

MQLの判定文はC言語と同じように動くのか?

MQLの勉強に役立つので、CやC++の本をたまに寝っ転がって読んでいます。Cの本を読んでいたら、if文やfor文の判定条件について、0以外は「真」として扱われるという記述がありました。 そこで、MQL4でも同じ仕様になっているのかScriptを使って調べてみました…

やっぱり喫茶店

新型コロナが流行り始めてからお店で飲食することは控えていました。しかし、喫茶店にどうしても行きたくなり、お客さんが少ないであろう開店時刻を狙って行ってきました。(幸い、開店時刻に入店した客は自分だけでした。) やっぱり珈琲は専門店で飲むに限…

詩ノヨミカタ

『イエスタデイをうたって』というアニメは、原作に比べるとストーリーをかなり端折っている感じがしたので、アニメを見終えた後で原作を読みました。読み終えてみると、「なんか、詩みたいな物語だったかも」とぼんやり思いました。 色々な出来事が描かれる…

MT4でCSVファイル出力 and 修正版VLDMI関数

計算結果をファイルに出力して検証したかったので、CSVファイルを出力する方法を調べました。FileOpen関数、FileWrite関数、FileClose関数を使います。 この記事内のコードで使われているeVLDMI関数 このブログの過去記事にもeVLDMI関数が登場しますが、それ…

改行できないっぽい(Text Object と Label Object)

MQL4に関するネット上の記事を読んでいたら、ラベルオブジェクト内のテキストは改行できないと書かれていました。 では、テキストオブジェクトの中では改行ができるのだろうかという疑問が浮かび、以下のコードで実験してみました。 int x, y; datetime uhoT…