配列タイプを定義する

int arrayaa [ 10 ];

つまり、私はint配列を定義し、配列名はarrayaaであり、この配列には10個のintデータがあります。

 

次にtypedefを前に追加すると、意味が完全に変わります

typedef int arrayaa [ 10 ];

arrayaaという名前配列型が定義さていることを示します。この配列型の要素型はintであり、10個のint型のデータ(要素)が含まれています。

同様に、char型、double型なども定義できます。

この配列タイプを使用して新しい配列を定義できます

たとえば

int main(void 
{     typedef
 int arrayaa [10 ]; 
    arrayaa a1; 
    forint i = 0 ; i < 10 ; i ++ 
    { 
        a1 [i] = i + 1 ; 
    } 
    cout << a1 [ 4 ] << endl; 
}

私が定義する配列型、名前arrayaaを、そして使用し、この配列型は、配列を定義し、A1という名前を

次に、a1で代入演算が実行され、a1の5番目の数値が出力され、出力は5になります。

 

次に、2次元配列を定義する方法を見てください。

構造は1次元配列に似ています

int arrayaa [ 10 ] [ 10 ];

このようにして10行10列の100個のint要素で構成される 2次元配列の配列型arrayaa 定義されます。

 

 

次に、次の例を見てみましょう:ポインター配列型を定義します

typedef int(* arrayaa)[ 10 ];

配列型のポインタを定義します

次に、このポインターを使用します

int main(void 
{ 
    int a2 [ 10 ]; 
    typedef int(* arrayaa)[ 10 ]; 
    arrayaa aa; 
    aa =&a2; 
    a2 [ 1 ] = 10 ; 
    cout << a2 [ 1 ] << endl; 
}

このコードを1つずつ見てください

最初に2つの配列a2を定義し、次に前の配列と同じ型の配列型ポインターarrayaaを定義し、arrayaaで変数aaを定義してから、aaを先ほど定義した配列a2にポイントし、aaおよびその他の操作で出力する配列を割り当てます。

 

私たちは同じことができます

int main(void 
{ 
    int a2 [ 10 ];
    int(* arrayaa)[ 10 ]; 
    arrayaa =&a2; 
    a2 [ 1 ] = 10 ; 
    cout << a2 [ 1 ] << endl; 
}

前のコードと比較して、今回は直接ポインターを定義することです(要素タイプはintで、要素数の配列は10です)(そして上記の例は最初にポインタータイプを定義します)、ポインターをフロントa2にポイントします。

 

おすすめ

転載: www.cnblogs.com/qifeng1024/p/12686613.html