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

简介: 【C 语言】数组 ( 数组指针 | 数组指针定义 | 直接定义 数组指针 )

文章目录

总结

一、直接定义 数组指针

二、完整代码示例

总结

int (*p)[3] = NULL;






一、直接定义 数组指针


直接定义 数组指针 ,


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


 

int array2[3] = {0};


然后 , 直接定义数组类型变量 ,


 

int (*p)[3] = NULL;


最后 , 将 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"};
    // 数组指针 , 使用指针变量指向数组
    // 首先 , 定义一个普通数组 , 之后的 数组指针 指向该数组
    int array2[3] = {0};
    // 然后 , 直接定义数组类型变量
    int (*p)[3] = NULL;
    // 最后 , 将 array2 变量地址赋值给该 数组指针类型 变量
    // 指针指向的数据类型为 int[3] 数组类型的变量 array2
    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;
}


执行结果 :

image.png


目录
相关文章
|
13天前
|
安全 C语言
【C语言】如何规避野指针
【C语言】如何规避野指针
20 0
|
13天前
|
存储 编译器 C语言
C语言之数组
C语言之数组
22 0
|
14天前
|
C语言
C语言:数组和指针笔试题解析(包括一些容易混淆的指针题目)
C语言:数组和指针笔试题解析(包括一些容易混淆的指针题目)
|
3天前
|
C语言
c语言指针总结
c语言指针总结
10 1
|
3天前
|
机器学习/深度学习 C语言
C语言三维数组的创建
该代码片段展示了如何在C语言中创建一个动态的3D数组。由于`n`在编译时未知,不能直接声明为`int f[n][n][n]`。正确的方法是使用`malloc`进行动态内存分配。首先分配`n`个`int **`,然后对每一层分配`n`个`int *`,最后每个元素分配`n`个`int`。之后可以使用这个3D数组,并在完成后正确释放内存。
|
8天前
|
存储 程序员 C语言
【C 言专栏】C 语言指针的深度解析
【4月更文挑战第30天】C 语言中的指针是程序设计的关键,它如同一把钥匙,提供直接内存操作的途径。指针是存储其他变量地址的变量,通过声明如`int *ptr`来使用。它们在动态内存分配、函数参数传递及数组操作中发挥重要作用。然而,误用指针可能导致错误,如空指针引用和内存泄漏。理解指针的运算、与数组和函数的关系,以及在结构体中的应用,是成为熟练 C 语言程序员的必经之路。虽然挑战重重,但掌握指针将增强编程效率和灵活性。不断实践和学习,我们将驾驭指针,探索更广阔的编程世界。
|
10天前
|
算法 搜索推荐 程序员
C语言中的函数指针和回调函数
C语言中的函数指针和回调函数
9 2
|
13天前
|
存储 编译器 C语言
【C语言】初步解决指针疑惑
【C语言】初步解决指针疑惑
7 0
|
14天前
|
存储 C语言
指针深入解析(C语言基础)带你走进指针,了解指针
指针深入解析(C语言基础)带你走进指针,了解指针
|
14天前
指针指向数组
指针指向数组
17 0