これは記憶によるものなので、いくつかの単語を誤用している可能性がありますが、意味は理解できるはずです
私は現在大学にいて、プログラミングを少し専攻しています - 私たちは C++ を始めました。そして、配列を使い始めたとき、C++ の先生 (奇妙なアイデアと、コメントが一切許可されないなどのプログラミング規則を持つ先生) が、私たちにすべきだと言いました。より効率的にするために、配列サイズを 4 の倍数にします。
char exampleArrayChar[ 4 ]; //Allowed
float exampleArrayChar[ 6 ]; //NOT Allowed
int exampleArrayChar[ 8 ]; //Allowed
この背後にある理由は、コンピューターがメモリを割り当てる方法にあると彼は言いました。
コンピューターは、各配列要素のメモリ アドレス/場所を 4 バイトのグループで割り当てたので、8 要素の配列は 2 つのメモリ グループで作成されました。
したがって、サイズ 6 の配列を作成すると、4 つのグループが 2 つ割り当てられますが、それらのバイトのうち 2 つ (8 つのうち) が無効/無効としてマークされ、配列全体が解放されるまで使用できなくなるという問題がありました。メモリー。
これは、他のコンピューター数学 (正確に 1000 ではなく 1gb = 1024mb など) に関してはもっともらしいように思えますが、次のことを知りたいと思っています。
- これがどれほど真実であり、これを行うことで得られるものがあるとすれば、
- これはC ++だけですか?(私はそうではないと思いますが、それでも尋ねる価値があります)
- これに関する詳細情報 - たとえば、なぜ 4 なのですか? コンピューターの数学は通常 2 進数なので 2 ではありませんか?
Web を見回しても、主な用途や関連性のあるものを見つけることができませんでした。