当前位置: 首页 > news >正文

C语言| 指针引用数组元素

C语言| 数组

指针与数组的关系:

1 指针与一维数组的关系;(重点,要掌握)

2 指针与二维数组的关系。(难点,用得少)

【用指针引用数组元素】

引用数组元素的方法:

1 用下标引用;

2 用指针引用。通过指向某个数组元素的指针变量来引用数组元素。

数组的类型要和指针变量的基类型相同

【程序代码1】指针引用数组元素

定义一维数组a,有5个元素,
a[0]、a[1]、a[2]、a[3]、a[4]===是数组元素,也是变量名。
p = &a[0]; 
表示将a[0]的地址放到指针变量p中,也就是说指针变量p指向数组的第一个元素a[0]。
在C语言中规定,“数组名”是一个指针常量,表示数组第一个元素的起始地址。
所以 p = &a[0]; 和 p = a; 是等价语句,输出结果*p和*q都是一样的。

数组a 是 int型,占4字节。
数组a中每一个元素,都占4字节的内存单元,
每个字节都有一个地址,所以每个元素都有4个地址。

 p = &a[0]; //把第一个元素的第一字节的地址,放到p中。
 q = a; //表示把数组a的第一个元素的起始地址赋给指针变量q。

【数组的首地址】就是数组第一个元素的起始地址。
起始地址==第一个元素的第一字节的地址。

#include <stdio.h>

int main(void)
{
    int a[] = {11, 22, 33, 44, 55}; //定义一维数组a
    int *p = &a[0]; //指针p指向a[0],存放a[0]的地址。
    int *q = a; //q指向a[0];

    printf("*p = %d, *q = %d\n", *p, *q);
    
    return 0;
}
 

http://www.dtcms.com/a/233881.html

相关文章:

  • 芒种耕耘时,codigger智启新程
  • label-studio的使用教程(导入本地路径)
  • 深入解析OSPF特殊区域类型
  • Modbus TCP 通信基础
  • ServBay 1.13.0 更新,新增第三方反向代理/内网穿透
  • DFS训练(网格图)
  • 2024年09月 C/C++(六级)真题解析#中国电子学会#全国青少年软件编程等级考试
  • SpringBoot自动化部署实战技术文章大纲
  • 【Fiddler抓取手机数据包】
  • 多航态无人艇航态变换姿态控制系统设计与实现_可复现,有问题请联系博主
  • Spring Bean是否是线程安全的
  • aiohttp异步爬虫实战:从零构建高性能图书数据采集系统(2025最新版)
  • 深度学习之模型压缩三驾马车:基于ResNet18的模型剪枝实战(2)
  • 代码训练LeetCode(23)随机访问元素
  • 《操盘实战》速读笔记
  • AI编程助手入门指南:GitHub Copilot、Cursor与Claude的安装与基础使用
  • 轻松掌控硬件接口:LuatIO可视化工具,物联网开发的“效率加速器”!
  • 动态规划-1035.不相交的线-力扣(LeetCode)
  • 【学习分享】shell基础-数组
  • Day45 Python打卡训练营
  • minio入门学习
  • 【AI学习】KV-cache和page attention
  • 如何使用 Redis 快速实现布隆过滤器?
  • 守护进程实验——autoDL
  • ABP VNext 在 Kubernetes 中的零停机蓝绿发布
  • Java-IO流之转换流详解
  • 高性能分布式消息队列系统(三)
  • STM32 NVIC中断控制器
  • 【LLIE专题】NTIRE 2025 低照度图像增强第二名方案
  • JS深入学习 — 循环、函数、数组、字符串、Date对象,Math对象