Linux C语言:指针与数组

一、指针与数组的基本用法

  • 数组指针是指数组在内存中的起始地址,数组元素的地址是指数组元素在内存中的起始地址
  • 一维数组的数组名为一维数组的指针(起始地址)

例如:

cs 复制代码
double x[8];
因此,x为x数组的起始地址
  • 设指针变量px的地址值等于数组的指针x(即指针变量px指向数组的首元数),则:

x[i] 、*(px+i)、*(x+i) 和px[i]具有完全相同的功能:访问数组第i+1个数组元素。

  • 使用指针遍历一维数组
  • 指针变量和数组在访问数组中元素时,一定条件下其使用方法具有相同的形式,因为指针变量和数组名都是地址量

二、指针与数组使用注意事项

1、数组名和指针有什么区别

1)含义不同

数组名代表一个数组,存放相同类型的元素指针代表存储地址的变量

2)使用不同

数组名代表一个数组,存放相同类型的元素指针代表存储地址的变量

3)长度不同

sizeof数组名,代表数组占用的总空间

sizeof指针,和操作系统有关,32位系统,4个字节

4) 本质不同

指针变量是地址变量,而数组名是地址常量

相关推荐
WWZZ20259 小时前
ORB_SLAM2原理及代码解析:SetPose() 函数
人工智能·opencv·算法·计算机视觉·机器人·自动驾驶
running thunderbolt9 小时前
项目---网络通信组件JsonRpc
linux·服务器·c语言·开发语言·网络·c++·性能优化
小马学嵌入式~10 小时前
堆排序原理与实现详解
开发语言·数据结构·学习·算法
青岛少儿编程-王老师10 小时前
CCF编程能力等级认证GESP—C++6级—20250927
java·c++·算法
一人の梅雨10 小时前
1688 拍立淘接口深度开发:从图像识别到供应链匹配的技术实现
人工智能·算法·计算机视觉
_给我学起来10 小时前
数据结构:树
数据结构
Miraitowa_cheems11 小时前
LeetCode算法日记 - Day 64: 岛屿的最大面积、被围绕的区域
java·算法·leetcode·决策树·职场和发展·深度优先·推荐算法
egoist202311 小时前
[linux仓库]信号快速认识[进程信号·壹]
linux·c语言·信号处理·信号·前后台进程
Christo311 小时前
关于K-means和FCM的凸性问题讨论
人工智能·算法·机器学习·数据挖掘·kmeans
_不会dp不改名_11 小时前
leetcode_1382 将二叉搜索树变平衡树
算法·leetcode·职场和发展