C通过指针访问数组元素

在C语言中,数组除了通过数组索引访问,也可以通过指针来访问数组中的元素。下面是一个简单的例子:

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

int main() {
    int array[5] = {1, 2, 3, 4, 5};
    int *ptr = array; // 指向数组的第一个元素的指针

    printf("数组元素为:");
    for(int i = 0; i < 5; i++) {
        printf("%d ", *(ptr + i)); // 通过指针访问数组元素
    }

    return 0;
}

在这个例子中,我们首先定义了一个包含5个元素的整数数组array。然后,我们定义了一个指向array的第一个元素的指针ptr。在for循环中,我们使用*(ptr + i)来访问数组中的每一个元素,并将其打印出来。

需要注意的是,指针加法操作的结果是该指针所指向的数据类型大小的偏移量,而不是简单的地址偏移。所以,ptr + i的结果是指向数组第i+1个元素的指针。使用*运算符可以获取该地址处的值,即访问到数组中的元素。

相关推荐
BizzZ_36 分钟前
C++(22)——类型转换和IO流
开发语言·c++
小范同学_40 分钟前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
xiaobobo33301 小时前
c语言中for循环条件中定义临时栈变量的作用域
c语言·for循环条件定义栈变量·大括号作用域·独立栈变量
geovindu1 小时前
CSharp: 万年历
开发语言·后端·c#·.net
我找到地球的支点啦2 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信
予昊2 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
惜离殇2 小时前
从零开始的敲代码生活--Linux应用软件(文件操作基础1)
linux·c语言·文件操作·标准io
weixin_461408582 小时前
Mybatis-flex小记
java·开发语言·mybatis
青梅味猪大肠3 小时前
【深入浅出C++】为什么虚表指针可以解决菱形继承
开发语言·c++
潘潘的嵌入式日记4 小时前
I²C 从机接收总被覆盖?双缓冲要在 STOP 时交接
c语言·开发语言·单片机