6.数组类型和数组指针类型

 

一.数组类型

定义一个数组类型:

typedef int MyArrayType[5];  

使用这个数组类型:

void main() {

    typedef int MyArrayType[5];
    MyArrayType myArray;

    int i = 0;
    for (i = 0; i < 5; i++)
    {
        myArray[i] = i + 1;
    }

    for (i = 0; i < 5; i++)
    {
        printf("%d\n",myArray[i]);
    }

    int a[5];
    MyArrayType *pArray = NULL; // 定义一个数组类型的指针
    pArray = &a;
    
    system("pause");

}

二.数组指针类型

定义一个数组指针类型:

typedef int(*MyPArrayType)[5];

使用这个数组指针类型:

void main() {

    typedef int(*MyPArrayType)[5];
    MyPArrayType myPoint; // 相当于定义一个指向int[5]类型的指针
    int b[5];
    myPoint = &b;

    int i = 0;
    for (i = 0; i < 5; i++)
    {
        (*myPoint)[i] = i + 1;
    }

    for (i = 0; i < 5; i++)
    {
        printf("b[%d] = %d\n",i,(*myPoint)[i]);
    }
    system("pause");

}

三.直接定义指针变量

定义一个数组指针类型:

int(*mypArrayPoint)[5];

使用这个数组指针类型:

void main() {

    
    int c[5];
    int(*mypArrayPoint)[5];
    int i = 0;

    mypArrayPoint = &c;
    
    for (i = 0; i < 5; i++)
    {
        (*mypArrayPoint)[i] = i + 1;    
    }
    
    for (i = 0; i < 5; i++)
    {
        printf("c[%d] = %d\n", i, (*mypArrayPoint)[i]);
    }

    system("pause");

}

 

posted @ 2017-05-11 15:14  夜行过客  阅读(686)  评论(0编辑  收藏  举报