C 语言数组 ( 数组指针 | 数组指针定义 | 使用 数组指针类型 定义数组指针 )

Posted 韩曙亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C 语言数组 ( 数组指针 | 数组指针定义 | 使用 数组指针类型 定义数组指针 )相关的知识,希望对你有一定的参考价值。

总结

    // 首先 , 定义 数组指针类型 别名
    typedef int(*ArrayPointer)[3];

    // 然后 , 声明一个 数组指针类型 变量
    ArrayPointer p = NULL;




一、使用 数组指针类型 定义数组指针



使用 数组指针类型 定义数组指针 ,

首先 , 使用 typedef 定义一个数组指针类型 ,

    typedef int(*ArrayPointer)[3];

然后 , 定义一个普通数组 , 之后的 数组指针 指向该数组 ,

    int array2[3] = 0;

最后 , 声明一个 数组指针类型 变量 , 将 array2 变量地址赋值给该 数组指针类型 变量 , 指针指向的数据类型为 int[3] 数组类型的变量 array2 ;

    ArrayPointer p = NULL;
    p = &array2;

验证上述 定义的数组指针 :

为 数组元素 赋值 ,

    // 为数组赋值
    int i = 0;
    for(i = 0; i < 3; i++)
    
        array2[i] = i + 1;
    

使用 数组指针 , 打印数组元素内容 :

    // 使用 数组指针 访问数组中的值
    for(i = 0; i < 3; i++)
    
        printf("%d\\n", (*p)[i]);
    




二、完整代码示例



完整代码示例 :

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()

    // 指针数组 , 数组元素是指针 (作为参考)
    char *array = "12", "ab", "34";

    // 数组指针 , 使用指针变量指向数组

    // 使用 数组指针类型 定义数组指针

    // 首先 , 定义 数组指针类型 别名
    typedef int(*ArrayPointer)[3];

    // 然后 , 定义一个普通数组 , 之后的 数组指针 指向该数组
    int array2[3] = 0;

    // 最后 , 声明一个 数组指针类型 变量
    // 将 array2 变量地址赋值给该 数组指针类型 变量
    // 指针指向的数据类型为 int[3] 数组类型的变量 array2
    ArrayPointer p = NULL;
    p = &array2;


    // 为数组赋值
    int i = 0;
    for(i = 0; i < 3; i++)
    
        array2[i] = i + 1;
    

    // 使用 数组指针 访问数组中的值
    for(i = 0; i < 3; i++)
    
        printf("%d\\n", (*p)[i]);
    

    // 命令行不要退出
    system("pause");
    return 0;

执行结果 :

以上是关于C 语言数组 ( 数组指针 | 数组指针定义 | 使用 数组指针类型 定义数组指针 )的主要内容,如果未能解决你的问题,请参考以下文章

C 语言数组 ( 数组指针 | 数组指针定义 | 使用 数组类型* 定义数组指针 )

C 语言数组 ( 数组指针 | 数组指针定义 | 直接定义 数组指针 )

C语言如何定义指针指向字符型二维数组

c语言中如何定义动态指针数组

C语言指向二维数组的指针

C 语言二级指针 内存模型图 ( 指针数组 | 二维数组 | 自定义二级指针内存 )