数组指针和指针数组

引用:【数组指针】 仅此一篇 让你深刻理解数组指针-CSDN博客

b站:【动画讲解C语言指针-14-数组指针和指针数组】 https://www.bilibili.com/video/BV1Qj421U75U/?share_source=copy_web\&vd_source=d59dcee6044af8fc880b46b581c3f58a

指向数组和指向数组首元素的地址是两码事

数组指针:本质是一个指针

普通指针指向变量

数组指针指向数组

所以数组指针实际上是数组首地址的地址

数组指针指向数组的首地址 是和数组有关联,不仅仅是指向数组首元素的地址 指向整个数组

复制代码
#include<stdio.h>

int main()
{
	int(*py)[3];//py是一个指针 指向一个数组
	int a[3] = { 1, 2, 3 };
	int i = 0;

	py = &a;//这里将py指向数组a
	for (i = 0; i <= 2; i++)
	{
		printf("py=%p  *(py)=%p  **(py)=%d  &a[i]=%p  a[i]=%d\n",
			(py), *(py), *(*(py)), &a[i], a[i]);
		if (i == 0)
	        (int*) py = (int*)py + (i + 1);
        else
	        (int*) py = (int*)py + i;
	}
	return 0;

}

这里py指向了数组a,同时a这个数组名的地址也是数组的地址。

(int *)py=(int *)py+1; 是将指针指向数组的下一位,即指向数组a的第二位。

*py+i是指在数组中的某一位的地址。

*(*py+i)是指某一位地址存储的值。

相关推荐
骊城英雄3 分钟前
Rust从入门到精通-trait
人工智能·算法·rust
可编程芯片开发37 分钟前
基于PI控制算法的pwm直流电机控制系统Simulink建模与仿真
算法
怕浪猫1 小时前
2840亿参数只卖白菜价:DeepSeek V4 Flash 正式版上线,Agent 能力暴涨6倍
人工智能·算法
让学习成为一种生活方式1 小时前
苄基异喹啉生物碱糖基转移酶UGT74AN1晶体--Journal of Agricultural and Food Chemistry
人工智能·算法
alphaTao1 小时前
LeetCode 每日一题 2026/7/27-2026/8/2
python·算法·leetcode
三克的油1 小时前
数据结构-4
数据结构
2501_926978332 小时前
提示工程的实战报告(二):模型的失败模式与边界行为
人工智能·深度学习·算法
小小晓.2 小时前
C++记:函数
开发语言·c++·算法
casual~2 小时前
模逆元计算方法详解:扩展欧几里得算法与费马小定理
学习·算法·逆元
脚踏实地皮皮晨2 小时前
002002002_DepandencyObject类2
开发语言·windows·算法·c#·visual studio