C语言通过指针访问数组元素介绍

介绍

在编程中我们经常会遇到遍历数组,或者取数组中某一位置的值,采取数组索引的方式也是可以的,今天我介绍一个通过指针访问数组数据。

废话不多说,先上代码。

c 复制代码
#include <stdio.h>

int main() {
    // 定义一个整型数组并初始化
    int array[5] = {10, 20, 30, 40, 50};

    // 定义一个指向整型的指针
    int *ptr;

    // 让指针指向数组的第一个元素
    ptr = array;

    // 通过指针访问和修改数组元素
    printf("The first element of the array is: %d\n", *ptr); // 输出:10
    *ptr = 5; // 修改第一个元素的值

    printf("The first element of the array after modification is: %d\n", *ptr); // 输出:5

    // 让指针指向数组的下一个元素
    ptr++;

    printf("The second element of the array is: %d\n", *ptr); // 输出:20

    return 0;
}
代码讲解
  1. 首先定义了一个包含五个整数的数组array并初始化了它的元素。
  2. 然后,我们定义了一个指向整型的指针ptr
  3. ptr指向数组array的第一个元素,这是通过将ptr的值设置为array的地址实现的。
  4. 使用*ptr,我们可以访问和修改ptr所指向的内存位置的值,即数组的第一个元素。
  5. 通过使用ptr++,可以使指针向前移动一位,使其指向数组的下一个元素。
  6. 再次使用*ptr,可以访问和修改数组的第二个元素。

总结

通过这种方式,可以使用指针遍历整个数组,或者直接通过指针访问数组的特定元素。注意,当使用指针访问数组时,需要确保指针仍在数组的合法范围内,以防止访问无效的内存区域。

相关推荐
SunnyByte1 小时前
C语言——贪吃蛇的实现
c语言·单链表·贪吃蛇
浅念-2 小时前
刷穿LeetCode:BFS 解决 Flood Fill 算法
数据结构·c++·算法·leetcode·职场和发展·bfs·宽度优先
做cv的小昊3 小时前
【TJU】研究生应用统计学课程笔记(8)——第四章 线性模型(4.1 一元线性回归分析)
笔记·线性代数·算法·数学建模·回归·线性回归·概率论
贾斯汀玛尔斯3 小时前
每天学一个算法--倒排索引(Inverted Index)
算法·inverted-index
小e说说4 小时前
打破偏科困境:这些学习软件助孩子重燃学习热情
算法
月昤昽4 小时前
autoCAD二次开发 4.正多边形与collection区分
算法·c#·二次开发·autocad二次开发
休息一下接着来4 小时前
C++ 固定容量环形队列实现
c++·算法
im_AMBER5 小时前
手撕hot100之矩阵!看完这篇就AC~
javascript·数据结构·线性代数·算法·leetcode·矩阵
笨笨饿5 小时前
#79_NOP()嵌入式C语言中内联汇编宏的抽象封装模式研究
linux·c语言·网络·驱动开发·算法·硬件工程·个人开发