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

相关推荐
蜜獾云1 小时前
设计模式之构造器模式:封装复杂对象的构造逻辑
java·开发语言·设计模式
娇娇yyyyyy2 小时前
Qt编程(3): 信号和槽函数
开发语言·数据库·qt
wwww.wwww2 小时前
qt程序执行时报错:无法定位程序输入点,但是通过IDE的run又可以正常的运行。
开发语言·ide·qt
乌鸦乌鸦你的小虎牙5 小时前
qt 5.12.8 配置报错(交叉编译环境)
开发语言·数据库·qt
feifeigo1235 小时前
Leslie人口模型MATLAB实现(中长期人口预测)
开发语言·matlab
写代码的二次猿5 小时前
安装openfold(顺利解决版)
开发语言·python·深度学习
一只大袋鼠5 小时前
Redis 安装+基于短信验证码登录功能的完整实现
java·开发语言·数据库·redis·缓存·学习笔记
※DX3906※6 小时前
Java排序算法--全面详解面试中涉及的排序
java·开发语言·数据结构·面试·排序算法
笨笨马甲7 小时前
Qt QSS使用指南
开发语言·qt
We་ct8 小时前
LeetCode 77. 组合:DFS回溯+剪枝,高效求解组合问题
开发语言·前端·算法·leetcode·typescript·深度优先·剪枝