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

2023-03-29 21:39:30 浏览数 (1)

文章目录

  • 总结
  • 一、使用 数组类型* 定义数组指针
  • 二、完整代码示例

总结

代码语言:javascript复制
    typedef int(ArrayType)[3];
    ArrayType *p = NULL;

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


数组类型指针 就是 定义一个指针 , 指向数组首地址 ;

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

首先 , 定义数组类型 别名 ,

代码语言:javascript复制
    typedef int(ArrayType)[3];

然后 , 使用别名类型 , 声明数组变量 ,

代码语言:javascript复制
    ArrayType array2 = {0};

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

代码语言:javascript复制
    ArrayType *p = NULL;
    p = &array2;

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

为 数组元素 赋值 ,

代码语言:javascript复制
    // 为数组赋值
    int i = 0;
    for(i = 0; i < 3; i  )
    {
        array2[i] = i   1;
    }

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

代码语言:javascript复制
    // 使用 数组指针 访问数组中的值
    for(i = 0; i < 3; i  )
    {
        printf("%dn", (*p)[i]);
    }

二、完整代码示例


代码示例 :

代码语言:javascript复制
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
    // 指针数组 , 数组元素是指针
    char *array = {"12", "ab", "34"};

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

    // 使用 数组别名 定义数组指针

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

    // 然后 , 使用别名类型 , 声明数组变量
    ArrayType array2 = {0};

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


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

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


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

执行结果 :

0 人点赞