<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>データ型 アーカイブ - 自動売買を作ろう！</title>
	<atom:link href="https://mql-programing.com/archives/tag/%E3%83%87%E3%83%BC%E3%82%BF%E5%9E%8B/feed/" rel="self" type="application/rss+xml" />
	<link>https://mql-programing.com/archives/tag/データ型/</link>
	<description>MQLプログラミング学習サイト</description>
	<lastBuildDate>Tue, 31 Mar 2026 13:04:30 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://mql-programing.com/main29/wp-content/uploads/2021/02/cropped-ブログアイコン-32x32.jpg</url>
	<title>データ型 アーカイブ - 自動売買を作ろう！</title>
	<link>https://mql-programing.com/archives/tag/データ型/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【MQL4定数】最大値・最小値の定数​</title>
		<link>https://mql-programing.com/archives/2759/numerical/</link>
		
		<dc:creator><![CDATA[朝日奈りさ]]></dc:creator>
		<pubDate>Sat, 07 May 2022 06:01:29 +0000</pubDate>
				<category><![CDATA[【辞書】MQLリファレンス]]></category>
		<category><![CDATA[定数]]></category>
		<category><![CDATA[MQL]]></category>
		<category><![CDATA[リファレンス]]></category>
		<category><![CDATA[オーバーフロー]]></category>
		<category><![CDATA[最大値]]></category>
		<category><![CDATA[最小値]]></category>
		<category><![CDATA[データ型]]></category>
		<guid isPermaLink="false">https://mql-programing.com/?p=2759</guid>

					<description><![CDATA[<p>最大値・最小値の定数 最大値・最小値の定数は、データ型の最大桁数などを定数にしたものです。 プログラムを作成したときに、オーバーフローなどの不具合が発生したときには、データ型の最大値を超えている可能性があります。 その場 [&#8230;]</p>
<p>投稿 <a href="https://mql-programing.com/archives/2759/numerical/">【MQL4定数】最大値・最小値の定数​</a> は <a href="https://mql-programing.com">自動売買を作ろう！</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading"><span id="toc1">最大値・最小値の定数</span></h2>



<p>最大値・最小値の定数は、<a href="https://mql-programing.com/all-data-type/" title="【MQLリファレンス】データ型一覧　プログラム例あり">データ型</a>の最大桁数などを定数にしたものです。</p>



<p>プログラムを作成したときに、オーバーフローなどの不具合が発生したときには、データ型の最大値を超えている可能性があります。</p>



<p>その場合は、これらの定数で上限値を決めると良いでしょう。</p>



<p>　</p>



<h3 class="wp-block-heading"><span id="toc2">最大値・最小値の定数</span></h3>



<figure class="wp-block-table alignfull is-style-stripes"><table><tbody><tr><td><strong>定数</strong></td><td><strong>数値</strong></td><td><strong>説明</strong></td></tr><tr><td>CHAR_MIN</td><td>-128</td><td>char型の最小値</td></tr><tr><td>CHAR_MAX</td><td>127</td><td>char型の最大値</td></tr><tr><td>UCHAR_MAX</td><td>255</td><td>uchar型の最大値</td></tr><tr><td>SHORT_MIN</td><td>-32768</td><td>short型の最小値</td></tr><tr><td>SHORT_MAX</td><td>32767</td><td>short型の最大値</td></tr><tr><td>USHORT_MAX</td><td>65535</td><td>ushort型の最大値</td></tr><tr><td>INT_MIN</td><td>-2147483648</td><td>int型の最小値</td></tr><tr><td>INT_MAX</td><td>2147483647</td><td>int型の最大値</td></tr><tr><td>UINT_MAX</td><td>4294967295</td><td>uint型の最大値</td></tr><tr><td>LONG_MIN</td><td>-9.22337e+18</td><td>long型の最小値</td></tr><tr><td>LONG_MAX</td><td>9.22337e+18</td><td>long型の最大値</td></tr><tr><td>ULONG_MAX</td><td>1.84467e+19</td><td>ulong型の最大値</td></tr><tr><td>DBL_MIN</td><td>0.00E-01</td><td>double型の最小値(正数)</td></tr><tr><td>DBL_MAX</td><td>1.7976931348623158e+308</td><td>double型の最大値</td></tr><tr><td>DBL_EPSILON</td><td>2.22E-16</td><td>以下条件時のdouble型の最小値<br>1.0+DBL_EPSILON != 1.0</td></tr><tr><td>DBL_DIG</td><td>15</td><td>double型の精度(桁数)</td></tr><tr><td>DBL_MANT_DIG</td><td>53</td><td>double型の仮数部ビット数</td></tr><tr><td>DBL_MAX_10_EXP</td><td>308</td><td>double型の指数部最大数(10進数)</td></tr><tr><td>DBL_MAX_EXP</td><td>1024</td><td>double型の指数部最大数(バイナリ)</td></tr><tr><td>DBL_MIN_10_EXP</td><td>-307</td><td>double型の指数部最小数(10進数)</td></tr><tr><td>DBL_MIN_EXP</td><td>-1021</td><td>double型の指数部最小数(バイナリ)</td></tr><tr><td>FLT_MIN</td><td>1.18E-38</td><td>float型の最小値(正数)</td></tr><tr><td>FLT_MAX</td><td>3.40E+38</td><td>float型の最大値</td></tr><tr><td>FLT_EPSILON</td><td>1.192092896e-07</td><td>以下条件時のfloat型の最小値<br>1.0+FLT_EPSILON != 1.0</td></tr><tr><td>FLT_DIG</td><td>6</td><td>float型の精度(桁数)</td></tr><tr><td>FLT_MANT_DIG</td><td>24</td><td>float型の仮数部ビット数</td></tr><tr><td>FLT_MAX_10_EXP</td><td>38</td><td>float型の指数部最大数(10進数)</td></tr><tr><td>FLT_MAX_EXP</td><td>128</td><td>float型の指数部最大数(バイナリ)</td></tr><tr><td>FLT_MIN_10_EXP</td><td>-37</td><td>float型の指数部最小数(10進数)</td></tr><tr><td>FLT_MIN_EXP</td><td>-125</td><td>float型の指数部最小数(バイナリ)</td></tr></tbody></table></figure>



<p>　</p>



<h2 class="wp-block-heading"><span id="toc3">最大値・最小値の定数の使い方</span></h2>



<p>オーバーフローなどの不具合を回避するために使用することが多いでしょう。</p>



<p>大抵のロジックでは、オーバーフローは起こりませんが、ときどき発生するので、上限値を決めておくと良いでしょう。</p>



<p>例えば、以下のように使用します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>void OnInit() {
    for(int i = 0; i &lt; INT_MAX; i++){
        Print(i);
    }
}</code></pre></div>



<p>　</p>



<h2 class="wp-block-heading"><span id="toc4">プログラム例</span></h2>



<p>以下は、主要な最大値・最小値の定数をエキスパートログに出力するプログラム例です。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>//+------------------------------------------------------------------+
//| 最大値・最小値の定数 プログラム例                                  |
//+------------------------------------------------------------------+
void OnInit()
{
    // --- 整数型の最大値・最小値 ---
    Print("=== 整数型の最大値・最小値 ===");
    Print("CHAR_MIN   = ", CHAR_MIN);
    Print("CHAR_MAX   = ", CHAR_MAX);
    Print("UCHAR_MAX  = ", UCHAR_MAX);
    Print("SHORT_MIN  = ", SHORT_MIN);
    Print("SHORT_MAX  = ", SHORT_MAX);
    Print("USHORT_MAX = ", USHORT_MAX);
    Print("INT_MIN    = ", INT_MIN);
    Print("INT_MAX    = ", INT_MAX);
    Print("UINT_MAX   = ", UINT_MAX);
    Print("LONG_MIN   = ", LONG_MIN);
    Print("LONG_MAX   = ", LONG_MAX);
    Print("ULONG_MAX  = ", ULONG_MAX);

    // --- 浮動小数点型の最大値・最小値 ---
    Print("=== 浮動小数点型の最大値・最小値 ===");
    Print("DBL_MIN     = ", DBL_MIN);
    Print("DBL_MAX     = ", DBL_MAX);
    Print("DBL_EPSILON = ", DBL_EPSILON);
    Print("DBL_DIG     = ", DBL_DIG);
    Print("FLT_MIN     = ", FLT_MIN);
    Print("FLT_MAX     = ", FLT_MAX);
    Print("FLT_EPSILON = ", FLT_EPSILON);
    Print("FLT_DIG     = ", FLT_DIG);

    // --- オーバーフロー防止の例 ---
    Print("=== オーバーフロー防止の例 ===");
    int value = 2147483640;
    int addValue = 100;

    // 加算前にオーバーフローをチェック
    if(value &gt; INT_MAX - addValue)
    {
        Print("オーバーフローが発生するため加算しません");
        Print("現在値: ", value, " / 加算値: ", addValue, " / INT_MAX: ", INT_MAX);
    }
    else
    {
        value = value + addValue;
        Print("加算結果: ", value);
    }
}</code></pre></div>



<p>　</p>



<h3 class="wp-block-heading"><span id="toc5">実行結果</span></h3>



<p>上記プログラムを実行すると、エキスパートログに以下のような内容が出力されます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-txt" data-lang="実行結果"><code>=== 整数型の最大値・最小値 ===
CHAR_MIN   = -128
CHAR_MAX   = 127
UCHAR_MAX  = 255
SHORT_MIN  = -32768
SHORT_MAX  = 32767
USHORT_MAX = 65535
INT_MIN    = -2147483648
INT_MAX    = 2147483647
UINT_MAX   = 4294967295
LONG_MIN   = -9223372036854775808
LONG_MAX   = 9223372036854775807
ULONG_MAX  = 18446744073709551615
=== 浮動小数点型の最大値・最小値 ===
DBL_MIN     = 2.2250738585072014e-308
DBL_MAX     = 1.7976931348623158e+308
DBL_EPSILON = 2.2204460492503131e-016
DBL_DIG     = 15
FLT_MIN     = 1.17549435e-038
FLT_MAX     = 3.40282347e+038
FLT_EPSILON = 1.19209290e-007
FLT_DIG     = 6
=== オーバーフロー防止の例 ===
オーバーフローが発生するため加算しません
現在値: 2147483640 / 加算値: 100 / INT_MAX: 2147483647</code></pre></div>



<p>　</p>



<p>このように、最大値・最小値の定数を活用することで、オーバーフローを事前に検知し、プログラムの安全性を高めることができます。</p>



<p>　</p>



<div class="wp-block-cocoon-blocks-button-1 button-block"><a href="https://mql-programing.com/sample_program/" class="btn btn-l btn-circle" target="_self">サンプルプログラムはこちら</a></div>



<p>　</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-自動売買を作ろう！ wp-block-embed-自動売買を作ろう！"><div class="wp-block-embed__wrapper">

<a href="https://mql-programing.com/make_autotrade_by_myself/" title="【MQL4プログラミング】自動売買の作り方！FXで使えるテンプレートあり" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img decoding="async" src="https://i0.wp.com/mql-programing.com/main29/wp-content/uploads/2021/09/make_autotrade_by_myself.jpg?fit=1200%2C675&#038;ssl=1" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">【MQL4プログラミング】自動売買の作り方！FXで使えるテンプレートあり</div><div class="blogcard-snippet external-blogcard-snippet">目次 はじめにFX自動売買とはFX自動売買を作るための準備FX自動売買の作り方口座凍結の対策をするプログラムテンプレートを作る決済ロジックをプログラミングするプログラムテンプレートを作るエントリーロジックをプログラミング</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://mql-programing.com/archives/1605/make_autotrade_by_myself/" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">mql-programing.com</div></div></div></div></a>
</div></figure>



<figure class="wp-block-embed is-type-wp-embed is-provider-自動売買を作ろう！ wp-block-embed-自動売買を作ろう！"><div class="wp-block-embed__wrapper">

<a href="https://mql-programing.com/mql-reference/" title="MQL4リファレンス【全データ一覧】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-160x90.jpg 160w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-300x169.jpg 300w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-1024x576.jpg 1024w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-768x432.jpg 768w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-120x68.jpg 120w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス-320x180.jpg 320w, https://mql-programing.com/main29/wp-content/uploads/2021/02/MQLリファレンス.jpg 1120w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">MQL4リファレンス【全データ一覧】</div><div class="blogcard-snippet internal-blogcard-snippet">/*! elementor - v3.6.5 - 27-04-2022 */.e-container.e-container--row .elementor-spacer-inner{width:var(--spacer-size)}.e-</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://mql-programing.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">mql-programing.com</div></div></div></div></a>
</div></figure>



<p>　</p>
<p>投稿 <a href="https://mql-programing.com/archives/2759/numerical/">【MQL4定数】最大値・最小値の定数​</a> は <a href="https://mql-programing.com">自動売買を作ろう！</a> に最初に表示されました。</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
