C / C ++で配列インデックスがゼロから始まるのはなぜですか?
これをC++で示すプログラムは次のとおりです。
例
#include <iostream> using namespace std; int main() { int arr[] = {5,8,9,3,5}; int i; for(i = 0; i<5; i++) cout<< arr[i] <<" "; cout<<"\n"; for(i = 0; i<5; i++) cout<< *(arr + i) <<" "; return 0; }
出力
上記のプログラムの出力は次のとおりです。
5 8 9 3 5 5 8 9 3 5
上記のプログラムを理解しましょう。
配列arr[]には5つの要素が含まれています。これらの要素は、配列表現arr [i]および*(arr + i)のforループを使用して表示されます。得られた結果はどちらの場合も同じです。これを示すコードスニペットは次のとおりです。
int arr[] = {5,8,9,3,5}; int i; for(i = 0; i<5; i++) cout<< arr[i] <<" "; cout<<"\n"; for(i = 0; i<5; i++) cout<< *(arr + i) <<" ";
-
C /C++での多次元配列の初期化
多次元配列では、配列の次元は1より大きい必要があります。次の図は、次元が3 x 3x3の多次元配列のメモリ割り当て戦略を示しています。 これは、多次元配列を初期化するためのC++プログラムです。 アルゴリズム Begin Initialize the elements of a multidimensional array. Print the size of the array. Display the content of the array. End 例 #include<iostream>
-
C#配列でインデックス作成がゼロから始まるのはなぜですか?
配列は、インデックスのメモリ内のアドレスへのポインタでした。このインデックスは、配列の最初の要素でした。ここで、インデックスは、C言語が生まれる前からのオフセットと概念のようなものです。 配列要素が0Xff000から始まり、{35,23,67,88,90}のような5つの要素があるとします。したがって、intは4バイトを使用して格納されるため、メモリ内の配列は次のようになります。 0Xff000 has 35 0Xff004 has 23 0Xff008 has 67 0Xff012 has 88 0Xff016 has 90 つまり、配列にアクセスすると、ゼロオフセットはインデックス0にな