今までプログラムで変数を定義するときは何も考えずにintで定義をしていたのですが、
shortの範囲を超えないと断言できそうな変数を定義するときは
メモリを抑えるためにshortで定義をするべきなのでしょうか?
そもそもintとshortで定義することで、そこまでプログラムの動作に影響をおよぼすのでしょうか?
非常に基本的なことで申し訳ないのですが、
ご回答いただければ幸いです。
変数の定義はできるだけshortを使うべきですか?
Re: 変数の定義はできるだけshortを使うべきですか?
気にしなくてもいいと思いますよ
通常のint型は32ビット
short int型なら16ビット
つまりたったの2バイトの違いしか出ないのです
特に静的でない(保持されない)ローカル変数なんかでそんな違いを気にするよりは、しっかりと静的変数・自動変数・構造体やクラスのメンバ変数などを適切に使い分けたり
画像などの外部データを使用しているのなら、それらに手を加えたほうがメモリを押さえられたりします。
通常のint型は32ビット
short int型なら16ビット
つまりたったの2バイトの違いしか出ないのです
特に静的でない(保持されない)ローカル変数なんかでそんな違いを気にするよりは、しっかりと静的変数・自動変数・構造体やクラスのメンバ変数などを適切に使い分けたり
画像などの外部データを使用しているのなら、それらに手を加えたほうがメモリを押さえられたりします。
♪僕たちは まだ森の中 抜け出そう 陽のあたる場所へ
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: 変数の定義はできるだけshortを使うべきですか?
20年近く前なら気にしなくてはいけませんでしたが、今の時代は気にするほうが無駄です。
ちなみに、今のPCのCPUはint型の方が処理効率が良いですよ。
ちなみに、今のPCのCPUはint型の方が処理効率が良いですよ。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
-
NANA
Re: 変数の定義はできるだけshortを使うべきですか?
jay様、softya様
ご回答いただき、誠にありがとうございました。
とりあえず変数なぞ気にしないでいいということですね。
DXライブラリといい、メモリを気にしないでいいことといい、初心者プログラマーには優しい時代ですねw
ご回答いただき、誠にありがとうございました。
とりあえず変数なぞ気にしないでいいということですね。
DXライブラリといい、メモリを気にしないでいいことといい、初心者プログラマーには優しい時代ですねw
Re: 変数の定義はできるだけshortを使うべきですか?
単純な変数の場合は、迷わずintを使いましょう。
特に局所変数の場合には、intではなくshortを使うと、実際にデータに使われるメモリ量は変わらず、プログラムサイズは大きく、遅くなる可能性が十分考えられます。
巨大な配列などでは、メモリを節約するためにshortにするという選択は"あり"だと思います。
特に局所変数の場合には、intではなくshortを使うと、実際にデータに使われるメモリ量は変わらず、プログラムサイズは大きく、遅くなる可能性が十分考えられます。
巨大な配列などでは、メモリを節約するためにshortにするという選択は"あり"だと思います。