C++入门【14-C++ 指向数组的指针】

您可以先跳过本章,等了解了 C++ 指针的概念之后,再来学习本章的内容。

如果您对 C++ 指针的概念有所了解,那么就可以开始本章的学习。数组名是指向数组中第一个元素的常量指针。因此,在下面的声明中:

double runoobAarray[50];

runoobAarray 是一个指向 &runoobAarray[0] 的指针,即数组 runoobAarray 的第一个元素的地址。因此,下面的程序片段把 p 赋值为 runoobAarray 的第一个元素的地址:

double *p;

double runoobAarray[10];

p = runoobAarray;

使用数组名作为常量指针是合法的,反之亦然。因此,*(runoobAarray + 4) 是一种访问 runoobAarray[4] 数据的合法方式。

一旦您把第一个元素的地址存储在 p 中,您就可以使用 *p、*(p+1)、*(p+2) 等来访问数组元素。下面的实例演示了上面讨论到的这些概念:

实例

#include <iostream>using namespace std;int main ()
{// 带有 5 个元素的双精度浮点型数组double runoobAarray[5] = {1000.0, 2.0, 3.4, 17.0, 50.0};double *p;p = runoobAarray;// 输出数组中每个元素的值cout << "使用指针的数组值 " << endl; for ( int i = 0; i < 5; i++ ){cout << "*(p + " << i << ") : ";cout << *(p + i) << endl;}cout << "使用 runoobAarray 作为地址的数组值 " << endl;for ( int i = 0; i < 5; i++ ){cout << "*(runoobAarray + " << i << ") : ";cout << *(runoobAarray + i) << endl;}return 0;
}

当上面的代码被编译和执行时,它会产生下列结果:

使用指针的数组值 
*(p + 0) : 1000
*(p + 1) : 2
*(p + 2) : 3.4
*(p + 3) : 17
*(p + 4) : 50
使用 runoobAarray 作为地址的数组值 
*(runoobAarray + 0) : 1000
*(runoobAarray + 1) : 2
*(runoobAarray + 2) : 3.4
*(runoobAarray + 3) : 17
*(runoobAarray + 4) : 50

在上面的实例中,p 是一个指向 double 型的指针,这意味着它可以存储一个 double 类型的变量。一旦我们有了 p 中的地址,*p 将给出存储在 p 中相应地址的值,正如上面实例中所演示的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/299061.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

InstallSield更新包快速入门文档----感谢原作者ㄣ齊¨彡仯乄的无私提供

本文经原作者ㄣ齊彡仯乄特许授权于海洋女神发布&#xff0c;转载请务必注明出处与链接&#xff1b;原作者ㄣ齊彡仯乄和海洋女神保留对该文的一切法律许可下的权益&#xff1b;需要发布在盈利性报刊、网站等请与原作者ㄣ齊彡仯乄或海洋女神联系. 简述 本文主要描述安装程序更新包…

太赞了:中文版开源!这或许是最经典的计算机编程教材

全世界只有3.14 % 的人关注了爆炸吧知识转自 AI 科技大本营《Think Python》是很多计算机初学者的不二入门教材&#xff0c;受到广泛好评。该书原作者是美国 Olin 工程学院的教授 Allen B. Downey&#xff0c;目前该书的原版和中文版本都已免费开源。Allen 称&#xff0c;《Thi…

jBPM专家力作——《深入浅出jBPM》

恭喜本书荣登互动网和当当网畅销排行榜&#xff01;媒体评论 “这是一本全面介绍jBPM的书&#xff0c;从基础知识到实战开发技巧&#xff0c;作者结合其实际项目开发经验&#xff0c;对国内流程的许多特色要求给出了浅显易懂的解决方案。对于想在项目中应用jBPM的初学者&#x…

java gui 移动_JavaGUI如图:当鼠标按left按钮,右边的字会移动到左边按 爱问知识人...

import t。*;import javax。swing。*;import t。Rectangle;import t。event。ActionListener;import t。event。ActionEvent;/*** Title:** Description:** Copyright: Copyright (c) 2006** Company:** author zwh* version 1。0*/public class Frame1extends JFrame {public …

WeihanLi.Npoi 1.20.0 Released

WeihanLi.Npoi 1.20.0 ReleasedIntroWeihanLi.Npoi 是一个基于 netstandard2.0 的一个 NPOI 扩展库&#xff0c;主要用于导入导出 Excel 以及CSV&#xff0c;支持通过 Fluent API 的方式来支持非常灵活的导入导出配置&#xff0c;详细使用可以参考文档介绍以及项目示例Updates最…

转:Chrome渲染分析之Timeline工具的使用

概述 这个工具真的很强大&#xff0c;Timeline工具栏提供了对于在装载你的Web应用的过程中&#xff0c;时间花费情况的概览&#xff0c;这些应用包括处理DOM事件, 页面布局渲染或者向屏幕绘制元素。Timeline可以通过事件&#xff0c;框架&#xff0c;和实时内存用量3个方面的数…

工作流与Petri net的关系

SOA中国线路图 > SOA业务流程 > 工作流与Petri net的关系工作流与Petri net的关系 2008-7-10工作流与Petri net的关系 工作流的发展过程 以前&#xff0c;信息系统是设计来支持单个任务的执行。今天的信息系统需要支持业务流程&#xff0c;其不只局限于仅仅关心任务&…

数学和物理太难?这些动图让你秒懂抽象概念

数学动图△ 从椭圆的一个焦点射出的光线总会通过另一个焦点。△ 真人版。△ 一图看懂正弦、余弦和正切什么意思。△ 圆的面积。△ 如何理解圆的面积和派的关系。△ 勾股定理演示。直角三角形的两条直角边的平方和&#xff08;两个小正方形的面积&#xff09;&#xff0c;加起来…

java typereference_记录一下jackson中TypeReference的使用

今天在看到项目中有一段代码是将string字符串转化成对象&#xff0c;需要被转化成对象的类加了TypeReference&#xff0c;随即去百度了下。TypeReference是一个抽象类&#xff0c;继承了Comparable接口。里面的Type是一歌接口。贴上代码&#xff1a;mapper.readValue(station.g…

cisco综合实验

第四章综合实验<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />特效&#xff1a;[图]<?xml:namespace prefix v ns "urn:schemas-microsoft-com:vml" />第四章综合实验VTP的配置&#xff1a;S<?xml:name…

Docker小白到实战之容器数据卷,整理的明明白白

前言上一篇把常用命令演示了一遍&#xff0c;其中也提到容器的隔离性&#xff0c;默认情况下&#xff0c;容器内应用产生的数据都是由容器本身独有&#xff0c;如果容器被删除&#xff0c;对应的数据文件就会跟着消失。从隔离性的角度来看&#xff0c;数据就应该和容器共存亡&a…

U9在SQL Server上的性能优化经验(转述) — 之 行版本快照

此文根据用友的文档《基于SQL Server 2008构建SOA大型管理软件技术实践》“翻译”而成&#xff0c;非原创。在baidu上看见此文&#xff0c;觉得写的很好&#xff0c;就将原先的PPT细化一下并除去废话。 第二篇部分将的是行版本快照的隔离。 这是PPT上的图片&#xff1a; 图片上…

C++学习之路: 线程封装(基于对象编程)

引言&#xff1a; 此次我们重新封装线程&#xff0c; 采用基于对象编程的方式&#xff0c;不用于面向对象编程中重定义虚函数的方式&#xff0c;这里我们用回调函数的方式。 Thread.h 1 #ifndef THREAD_H_2 #define THREAD_H_3 4 #include <boost/noncopyable.hpp>5 #inc…

程序员崩溃的40个瞬间!!!

全世界只有3.14 % 的人关注了爆炸吧知识说到程序员&#xff0c;在外界眼里&#xff0c;他们是掌控代码的大神&#xff0c;他们是改变世界的王者。其实程序员的工作不容易&#xff0c;不信&#xff0c;就来看看程序员崩溃的各种瞬间——01公司实习生找bug02在调试时&#xff0c;…

是否可以将 json 反序列化为 dynamic 对象?

咨询区 jswanson&#xff1a;是否有方法可以将 json 反序列化为 dynamic 对象&#xff0c;如果可以实现的话&#xff0c;那我就可以省去很多冗余类。回答区 Tom Peplow&#xff1a;如果你用 Json.NET 的话&#xff0c;那就非常简单了。dynamic stuff JsonConvert.DeserializeO…

java web请求字符串处理_java web工作常用技能篇(三)-封装复杂请求对象2

前言&#xff1a;在各类网站论坛上,没有找到与工作比较贴切的技能,所以特此写一些对刚步入工作或者工作中没有重视的技能与问题,各位大牛请及时关闭文章.ps1&#xff1a;文中所有标点都是英文的,看官请不要在意.为了便于平时敲代码,所以中文输入法也默认了英文标点(防止各类因为…

Matlab学习------------带有右键菜单的GUI学习实例

实例步骤&#xff1a; 须要设置UIContextMenu&#xff0c;否则点击右键不显示。 右键点击第一个菜单之后&#xff1a;&#xff08;在菜单中加入对应的回调函数&#xff09; function r1_Callback(hObject, eventdata, handles) % hObject handle to r1 (see GCBO) % eventda…

多方位助您快速精准查阅文献和发文章的利器——X-MOL

全世界只有3.14 % 的人关注了爆炸吧知识无论您看文献的习惯是怎样的&#xff0c;X-MOL都有一种为您节省时间的功能:01根据参考文献一键直达全文—— X-MOL文献直达复制文章题录信息&#xff08;如“PNAS, 2020, 117, 6771-6776”&#xff09;或DOI&#xff0c; 粘贴到X-MOL首页…

关于Session的使用和优化

优点 如果要在诸多Web页间传递一个变量&#xff0c;那么用Session变量要比通过QueryString传递变量可使问题简化。 要使WEb站点具有用户化&#xff0c;可以考虑使用Session变量。你的站点的每位访问者都有用户化的经验&#xff0c;基于此&#xff0c;随着LDAP和诸如MS Site Ser…

ASP.NET Core端点路由中三种让人困惑的路由函数

早先提及了端点路由app.UseEndpoints, 端点路由强调的是端点和路由&#xff0c;其核心目的是将请求落地点与路由寻址方式解耦。《ASP.NET Core端点路由作用原理》这里面有几个容易混淆的函数•MapControllerRoute•MapDefaultControllerRoute•MapControllers有什么不同&#x…