外贸营销单页网站广州站图片

张小明 2026/1/12 11:49:47
外贸营销单页网站,广州站图片,推广软件哪个好,wordpress做商品筛选引用在正式介绍指针之前#xff0c;先来看看什么是引用。int a 10;int ref1 a;你可能注意到了#xff0c;上面的代码里有个 。这就是我们的主角#xff0c;引用。在变量名之前加上该符号#xff0c;就可以指出它是个引用。我们常说的引用#xff0c;就是把别人…引用在正式介绍指针之前先来看看什么是引用。int a 10;int ref1 a;你可能注意到了上面的代码里有个 。这就是我们的主角引用。在变量名之前加上该符号就可以指出它是个引用。我们常说的引用就是把别人的东西拿过来自己用。C 的引用也是如此就是把另外一个对象拿过来用然后起个名字。也就是说// a 10ref1 11;// 现在a 11对象就像瓶子引用就是瓶子上面的标签。访问引用时就是找到标签所对应的瓶子。引用必须满足以下条件引用指向的是一个对象而不是值引用类型和它指向的对象匹配引用必须在声明时初始化引用初始化后不能更改绑定的对象要注意的是引用必须在声明时初始化。下面代码会产生编译错误int ref2; // Error!另外要注意的一点是可以一次声明多个引用但都要加上 。int ref1a, ref2a;// ref1 是引用ref2 则是 a 值的拷贝int ref1a, ref2a;// 都是引用实际上把 和类型名称放一起也是可行的但是考虑到上面这个一次声明多个的问题我还是建议和变量名放一起否则有歧义。指针好好好现在我们来到了正题。先把上面的引用忘了我们到最后再来讲指针和引用的差别。创建指针int a 10;int *p;p a;这里又有 * 又有 看晕了都。所以我把它拆成了三行我们一行一行来。首先第二行有个星号。这就是我们的主角指针。* 表示创建的是指针。这一行声明了一个 int 类型的指针但是并没有初始化。第三行把指针 p 指向 a 的地址。你肯定注意到这里有个老熟人 。当然啦我让你先把引用忘了是有原因的因为这里的 和上面引用那里的完全不是一个东西。这里的 叫做 取地址符。它和一个变量一起用可以返回那个变量的地址。各位都知道你的内存很大位置很多取地址符就是用于查找变量的位置的。Warning! 这里不初始化指针拆成两行的方法是不推荐的因为未初始化的指针行为未知。实际请务必初始化既然得到了位置我们自然就知道指针的用法了——“一个指针对应一个对象的位置”。注意引用不是对象没有地址指针自己是对象所以可以用指针指向指针。这个后面再说。ohhhhhhhh 恭喜你你已经明白了怎么创建指针接下来就用一下吧。用指针cout *p;// a 10, output: 10*p 20;cout *p;// a 20, output: 20嗯现在熟悉的东西又来了。我们在创建指针的时候已经用了星号了现在访问时又出现了。或许你已经猜到了。很遗憾这里的星号和前面的含义也截然不同。* 叫解引用符别看名字它和引用没半毛钱关系用于从某个地址获取其对应的对象。啥意思我们的变量对象在内存里 找到了对象的位置用指针存起来然后想要用的时候再用 * 根据位置找到对象。哎回到上面的三行代码。1、4 行输出了对象3 行则改变了对象的值。我们可以看到由于根据位置找到的对象还是 a所以 a 的值也发生了变化。int b 30;p b;我们先前提到指针是对象所以它本身也可以改变。你可以用其它对象的地址重新赋值给指针就像上面一样。这样指针就指向其它对象了。再次恭喜你你现在已经明白了怎么用指针了。接下来再介绍点特殊的指针。在继续之前……再强调一下* 两个符号存在多重含义。*在声明变量时在变量前声明它是个指针在使用变量时在变量前是通过地址找对象解引用符在声明变量时在变量前声明它是个引用在使用变量时在变量前是根据对象找地址也就是说声明前面是类型其它时候在寻找。指针配上找对象引用配上找地址。空指针int *p nullptr;int *p1 0;我的天哪这两个指针并没有指向某个对象的地址会不会报错啊其实并不会它们叫做空指针。顾名思义就是空的指针。空指针什么都不指向。就是个指针而已空的用不了。通常你没理由这么干除非你真的暂时不知道该指向什么以后再指。这样你用的时候就可以检查指针是否有指向东西是否为空而不是未初始化指针的未知行为。if(p){...}if(p1){...}如果指针是空的那么它在 if 里相当于 false。所以可以像上面那样检查指针是否为空。Warning! 未初始化和空指针不是一个东西。未初始化的指针的行为是未知的不能这样检验。所以确保初始化。指针的嵌套前面提到了指针是对象也就是说指针也有地址也就是自己的位置。那么我们就可以套娃了cpp 允许你嵌套比如指向指针的指针。int a 10;int *p1 a;int **p2 p1;cout*p2endl;cout**p2endl;cout*p1endl;先想想取地址符和解引用符的作用想想上面代码的输出是什么。示例输出0x7ffe065143d41010嗯你的输出第一行肯定和我不一样且每次运行的输出肯定不一样。如果你学过点底层知识一定能看出来第一行是个十六进制数。没错它就是个地址。为什么会有这样的结果呢通过图片解析下你就明白了第一行变量名第二行变量的值第三行变量的地址。注意 p2 p1 地址未知是假设的指针套娃示例可以看到*p2 实际上指的是 p1而它的值则是 a 的地址。而 **p2 才指的是 a 本身。也就是说解引用一次就找一次地址对应的对象。要想获得 a则必须解引用两次。再再再恭喜你一下你已经完全明白了指针的简单使用。指针和引用通过上面的讲解我们不难得出结论指针是对象引用不是对象指针、引用可以指向的是对象推论指针可以指向指针所以显然可以推出引用可以指向指针指针不能指向引用引用只是给对象贴了标签起别名而已。而指针则是创建了另一个对象来存储对象的位置。在这个过程中最重要的是分清 和 * 到底是在声明类型还是作为取地址和解引用运算符。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站排版的优点wordpress调用地图导航

ohos-libxml2 是为 OpenHarmony 平台编译的 libxml2 XML 解析库。本文档详细介绍如何在鸿蒙PC上安装和使用官方适配完成的 libxml2 库,包括 HNP 包的打包、安装和使用方法。 📋 目录 一、项目概述二、为什么需要 HNP 包三、HNP 包打包方法四、安装与使用…

张小明 2026/1/7 18:17:57 网站建设

随州北京网站建设网站建设的主要步骤有哪些

Excalidraw 中的底图叠加绘制:从图像导入到智能协作的完整实践 在技术团队频繁进行架构讨论、产品评审和远程协作的今天,一张清晰的手绘草图往往比千言万语更有效。但当灵感来自一张截图、一份扫描稿或白板照片时,如何快速将其转化为可编辑、…

张小明 2026/1/8 4:48:45 网站建设

淘宝电脑版网页官方网站建设优化

Excalidraw安全性评估:敏感数据是否安全? 在当今分布式协作日益频繁的背景下,技术团队对可视化工具的需求早已超越“画图”本身。一张架构图可能包含系统拓扑、内部服务命名、数据流向甚至未上线功能的设计细节——这些信息一旦泄露&#xf…

张小明 2026/1/8 4:48:43 网站建设

网站建设课程培训cms系统哪个好用

LangFlow 可视化工作流引擎深度解析 在大语言模型(LLM)技术飞速发展的今天,构建智能对话系统、自动化 Agent 或复杂推理流程已不再是少数资深工程师的专属任务。随着 LangChain 等框架的普及,越来越多开发者开始尝试将 LLM 与外部…

张小明 2026/1/8 4:48:45 网站建设

专门做机器人的网站用ps怎么做网站背景

第一章:Open-AutoGLM月报数据统计的变革背景随着企业对自动化与智能化数据分析需求的不断增长,传统月报统计方式在效率、准确性和可扩展性方面逐渐暴露出明显短板。手工整理数据、依赖静态模板以及缺乏实时反馈机制,已成为制约决策速度的关键…

张小明 2026/1/8 4:48:44 网站建设

保定cms建站系统大尺寸图网站

STM32 PWM输出仿真实战:从代码到波形的完整闭环你有没有遇到过这种情况——写完一段PWM控制代码,烧进板子却发现LED不亮、电机不动,示波器上也看不到波形?排查半天才发现是引脚配置错了,或是定时器时钟没使能。这种“盲…

张小明 2026/1/8 4:48:49 网站建设