关于二维数组地址问题的一个答复

简介: 【来信】敬爱的贺老师:  您好!  一直关注您的CSDN博客,首先向您说声辛苦了。作为外校的一名学生,我想向您请教一个关于二维数组的问题。程序如下:  int a [3][4] = { 1,2,3,4,5,6,7,8,9,10,11,12 };  cout << hex << a << endl;  cout << hex &l

【来信】

敬爱的贺老师:

  您好!
  一直关注您的CSDN博客,首先向您说声辛苦了。作为外校的一名学生,我想向您请教一个关于二维数组的问题。程序如下:
  int a [3][4] = { 1,2,3,4,5,6,7,8,9,10,11,12 };
     cout << hex << a << endl;
     cout << hex << &a[0][0] << endl;
     cout << hex << a[0] << endl;
     cout << hex << &a[0] << endl;
     cout << endl;
     cout << hex << a+1 << endl;
     cout << hex << a[1] << endl;
     cout << hex << &a[1] << endl;
     cout << hex << &a[1][0] << endl;

     cout << *(a+1) << endl;
  我的理解是:

  但为什么a[i]和*(a+i)是等价的呢?可能是我的习惯性思维,一直认为*是解析符号,得到的一定是个具体的数值,而不是个地址。

  同时,a+i已经是个地址了,为什么*(a+i )还是个地址呢?绕不过弯了。期待您的解惑。


【回复】

你好:
  关于这个问题,我已经给你写了一些文字。这里面有些绕的东西,写出来需要抠字眼,不容易。这里面也有文字不便传达的内容。这样的问题,可能更适合当面讨论完成。
  所以我放弃已经写的文字,这样写完至少需要我1个小时时间。换个思路,帮你解答。实际上,这也是你在今后学习中遇到类似具体问题的处理策略。
  首先,在身边找到能讨论的人。
  其次,如果“首先”不具备条件的话,这样的问题,算是初学者比较普遍的问题,可以通过搜索引擎找,可以上论坛找。如果没有满意的答复,自己发贴求助。我知道不少问题,CSDN的论坛中会有不少热心人会帮助。
  就你的问题,我用百度,浏览到下面3个链接可能对你有用:(1)(2)(3)
  以这样的方式,看大家的观点,会从不同角度讲,比听一个人讲效果好,也能够更锻炼你的辨析能力。
  以此作答。




==================== 迂者 贺利坚 CSDN博客专栏=================
|== IT学子成长指导专栏 专栏文章的分类目录(不定期更新) ==|
|== C++ 课堂在线专栏  贺利坚课程教学链接(分课程年级) ==|
|== 我写的书——《逆袭大学——传给IT学子的正能量》    ==|
===== 为IT菜鸟起飞铺跑道,和学生一起享受快乐和激情的大学 =====


目录
相关文章
|
10天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!
|
8天前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
本文讲解 Prompt 基本概念与 10 个优化技巧,结合学术分析 AI 应用的需求分析、设计方案,介绍 Spring AI 中 ChatClient 及 Advisors 的使用。
379 130
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
|
2天前
|
存储 安全 前端开发
如何将加密和解密函数应用到实际项目中?
如何将加密和解密函数应用到实际项目中?
196 138
|
8天前
|
人工智能 Java API
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
本文介绍AI大模型的核心概念、分类及开发者学习路径,重点讲解如何选择与接入大模型。项目基于Spring Boot,使用阿里云灵积模型(Qwen-Plus),对比SDK、HTTP、Spring AI和LangChain4j四种接入方式,助力开发者高效构建AI应用。
372 122
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
|
2天前
|
存储 JSON 安全
加密和解密函数的具体实现代码
加密和解密函数的具体实现代码
193 136
|
20天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1344 8
|
7天前
|
监控 JavaScript Java
基于大模型技术的反欺诈知识问答系统
随着互联网与金融科技发展,网络欺诈频发,构建高效反欺诈平台成为迫切需求。本文基于Java、Vue.js、Spring Boot与MySQL技术,设计实现集欺诈识别、宣传教育、用户互动于一体的反欺诈系统,提升公众防范意识,助力企业合规与用户权益保护。
|
19天前
|
机器学习/深度学习 人工智能 前端开发
通义DeepResearch全面开源!同步分享可落地的高阶Agent构建方法论
通义研究团队开源发布通义 DeepResearch —— 首个在性能上可与 OpenAI DeepResearch 相媲美、并在多项权威基准测试中取得领先表现的全开源 Web Agent。
1445 87