私の家庭教師は、インデックスを使用して、プログラムが行のどの文字にあるかを追跡するように言いました。インデックスは正確にはどのように機能しますか? カウントに似ていることは知っていますが、それ以外はわかりません。
3 に答える
大まかに言えば、インデックスはコレクションに対して機能します。「そのコレクションのn番目の要素が必要です」というだけです( nはインデックスです)。
あなたが持っている場合:
int foo[] = {2, 3, 5, 8, 13}; // array of 5 integers
インデックスとして 0 を使用すると 2 が得られ、1 を使用すると 3 が得られ、2 を使用すると 5 が得られ、3 を使用すると 8 が得られ、4 を使用すると 13 が得られます。
これらはすべて定数インデックスであるため、常に同じ結果が得られます。ただし、変数をインデックスとして使用すると、コレクションからさまざまな要素を取得できます。
配列の場合、そのコレクションは単に連続したメモリのブロックです。配列自体がメモリ アドレスであり、そのメモリ アドレスにインデックスを追加すると、探している要素が見つかります。
インデックスとは、特定の文字へのポインターを意味します。これは、単に文字位置を追跡する整数または実際のポインター型にすることができます。
string test = "Hello";
const int sLength = 5;
int index = 0;
for ( ; index < sLength ; index++ )
{
cout << "Character at index " << index << " = " << test[index];
}
最初は、インデックスをブックマークと考えるのに役立ちました。ブックマークは、私が最後に見たものを追跡します。
ただし、インデックスを本当に理解するには、ポインターを調査する必要があります。構造体がメモリに格納される方法、アドレスとは何か、あるアドレスから別のアドレスに正常に移動する方法を理解する必要があります。