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个元素的指针。使用*运算符可以获取该地址处的值,即访问到数组中的元素。

相关推荐
坚持编程的菜鸟6 分钟前
编写判断大小端程序
c语言·算法·判断大小端
牛艺翔21 分钟前
C++基础
开发语言·c++
键盘会跳舞25 分钟前
C++ :容器适配器stack源码级拆解
开发语言·c++··stack·先进后出
美味蛋炒饭.38 分钟前
Git 版本控制(下)
开发语言·git·学习·总结·后端开发
我星期八休息1 小时前
网络编程—网络层
开发语言·前端·网络·人工智能·智能路由器
不负岁月无痕1 小时前
简单理解操作系统结构
java·linux·c语言·开发语言·c++·面试
SomeB1oody2 小时前
【RustyML入门】2.9. MeanShift
开发语言·后端·机器学习·rust·教程
萧瑟其中~2 小时前
多线程锁详解:互斥锁·自旋锁·读写锁(CAS + futex 原理)
开发语言·c++
初级代码游戏2 小时前
iOS开发 Swift 速记7:结构体和类
开发语言·ios·swift
golang学习记2 小时前
Go 项目使用docker compose的正确方式
开发语言·docker·golang