c++ | 字符串与指针的恩断情仇

我想,c/c++中难的不是指针,而是其中的变化,尤其是思维的转变。很多东西 就是容易掉进陷阱。好在,你我都是善于思考的码农!

大致情况是这样的,底层<–>c语言<–>c++<–>应用
而数据的传输的最基础媒介就是 字符串,
然后经常是 c 的字符串 <–>c++字符串
举个例子, c++ 中直接用string 定义,而c中只能以最基础的 char 进行延伸

	//请注意  str 是一个 string 类型的对象 如果看源码,就是  通过 char 封装的一个类,(候捷老师有讲过 ,时间久了,有的东西有忘了)std::string str = "hello world";//   str2 是一个常指针变量,指向 内容  str 而 str 对象 就是在内存一块确定长度的字符数组。补充一句 这一块可以去看 c++primer  plus (记得没错的话,应该是在指针那部份,在前面) 讲的很到位 但我又怕说错 后续会补充//简单来说 就是  *str2 这个值 被焊死了 不能通过  *str2 充当变量,但是可以 以常量的身份出现const char *str2 = str;//所以经典问题出现了std::string str1 = "hello123";std::string str2 = "hello456";*str1 = *str2;		//	这是错误的str1 = str2;		//这是对的	--> *str1 == "hello456"//补充  (字节流输出)std::cout<<str2<<std::endl;			// str2是指向 "hello456"的 指针 也就是地址变量 存储的是地址  内容就是  十六进制数字 但是 cout 会输出 该地址在内存的内容  以 '\o' 结尾//但是,如果 是 cout<<指向整数的指针<<endl; 会输出该十六进制地址

贴上一些测试
在这里插入图片描述

在这里插入图片描述

#最后总结一下,其实指针 就是纸老虎,他本质就是也是变量 ,只是这个变量是地址类型,是变量,说明也是一个对象,然后需要分配空间,所以要和另个名次,引用做好区分 。引用(取别名)
#然后,复杂的其实 是 指针 和各种各样的 其他因素搅和在一起,所以容易绕进去!
#还有就是,多看专业人士写的书,就像上面提到的那本字典
#多思考,网上很多人的解释,都是基于他们的理解,夹杂主观因素,当然也包括我,后面到具体内容,还是要自己慢慢去吃透!!

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

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

相关文章

【Git】 如何删除本地分支

注意&#xff1a; 删除本地分支之前&#xff0c;请确保使用以下git checkout命令切换到您不想删除的另一个分支 切换分支&#xff1a; git checkout branch_name删除本地分支&#xff1a; git branch -D local_branch_name

【MongoDB】Windows 安装MongoDB 6.0

一、下载安装包 安装包下载地址https://www.mongodb.com/try/download/community这里我选择的是 二、解压并安装 1、解压 这里我将压缩包解压到了D盘&#xff0c;并重命名成了mongodb&#xff0c;解压后的目录如下&#xff1a; 2、创建配置文件 在D:\mongodb下新建conf目录…

网络工程师应知应会:基础知识(4)

一、虚拟路由冗余协议 (Virtual Router Redundancy Protocol&#xff0c;VRRP) 解决局域网中配置静态网关出现单点失效现象的路由协议&#xff0c;可以配置一个交换机群集。VRRP 允许两台或多台交换机使用同一个虚拟的 MAC 地址和 IP 地址&#xff0c;看起来多台交换机就像是一…

【触想智能】4U触摸工控机具有哪些优势?

工控机也叫工控主机&#xff0c;和我们常见的普通电脑主机是一样的&#xff0c;都是由CPU、主板、内存、硬盘、电源以及机箱组成的。 工控机有很多分类&#xff0c;有无风扇工控机、嵌入式工控机、上架式工控机、4U触摸工控机等。上架式工控机在市场上是比较受欢迎的&#xff0…

Django实战项目-学习任务系统-发送邮件通知

接着上期代码内容&#xff0c;继续完善优化系统功能。 本次增加发送邮件通知功能&#xff0c;学习任务系统发布的任务&#xff0c;需要及时通知到学生用户知晓。 由于目前智能手机普及&#xff0c;人人都离不开手机&#xff0c;所以手机端接收通知信息更加及时有效。 其中微信…

HTTP调试代理工具/Proxyman

Proxyman专为开发人员和网络爱好者设计&#xff0c;它允许用户拦截、查看和修改所有传入和传出的网络请求&#xff0c;并提供详细的分析和调试功能。 Proxyman支持HTTP、HTTPS和WebSocket协议&#xff0c;因此&#xff0c;可以轻松捕获和查看这些协议下的网络流量。用户可以使…

superagent 库

superagent 是一个流行的 JavaScript 库&#xff0c;用于在浏览器和 Node.js 环境中进行 HTTP 请求。它提供了简洁的 API&#xff0c;使得发送异步请求变得非常容易。 以下是一个使用 superagent 的简单示例&#xff1a; 在浏览器环境中&#xff1a; // 发送 GET 请求 supe…

ThingsBoard模板化

1、模板化概念 模板化是使用预定义模板动态地将值插入或替换到文本中的过程。这些模板充当变量的占位符,以后可以用实际数据填充这些变量。 在规则引擎上下文中,模板用于在运行时从传入消息中提取数据。这在规则节点配置中特别有用,其中模板化允许通过用传入消息的实时值替…

Python 批量删除Excel的所有图片对象

Python批量删除xlsx文件的所有图片对象&#xff0c;对于已经嵌入的单元格无法处理 能够将所有表的图片对象都给删除 适用于文件太大&#xff0c;无法打开的情况 from openpyxl import load_workbook# 加载Excel文件 wb load_workbook(r原始文件路径)# 获取所有的工作表 she…

自定义的卷积神经网络模型CNN,对图片进行分类并使用图片进行测试模型-适合入门,从模型到训练再到测试,开源项目

自定义的卷积神经网络模型CNN&#xff0c;对图片进行分类并使用图片进行测试模型-适合入门&#xff0c;从模型到训练再到测试&#xff1a;开源项目 开源项目完整代码及基础教程&#xff1a; https://mbd.pub/o/bread/ZZWclp5x CNN模型&#xff1a; 1.导入必要的库和模块&…

PP-Matting:trimap free的高精度自然图像抠图

论文&#xff1a;https://arxiv.org/abs/2204.09433 代码&#xff1a;https://github.com/PaddlePaddle/PaddleSeg 1、动机 在自然图像抠图领域&#xff0c;大多数方法都是基于Trimap来做抠图&#xff0c;这种trimap-based的方式在抠图时还需要用户绘制一个trimap作为模型输入&…

SpringBoot--Web开发篇:含enjoy模板引擎整合,SpringBoot整合springMVC;及上传文件至七牛云;restFul

SpringBoot的Web开发 官网学习&#xff1a; 进入spring官网 --> projects --> SpringBoot --> LEARN --> Reference Doc. --> Web --> 就能看到上述页面 静态资源映射规则 官方文档 总结&#xff1a; 只要是静态资源&#xff0c;放在类路径下&#xff1…

整理笔记——0欧电阻、电感、磁珠

设计电路时&#xff0c;经常用到0欧电阻、电感、磁珠&#xff0c;这三个基础电子原件万用表量都是“短路”&#xff0c;这三者之间有什么区别&#xff1f;什么情况下用什么原件&#xff1f; 一、0欧电阻 0欧电阻&#xff0c;并不是指元件的电阻值为0&#xff0c;而是电阻值很小…

使用免费 FlaskAPI 部署 YOLOv8

目标检测和实例分割是计算机视觉中关键的任务&#xff0c;使计算机能够在图像和视频中识别和定位物体。YOLOv8是一种先进的、实时的目标检测系统&#xff0c;因其速度和准确性而备受欢迎。 Flask是一个轻量级的Python Web框架&#xff0c;简化了Web应用程序的开发。通过结合Fla…

SpringBoot 日志

一、概述 日志是程序的重要组成部分&#xff0c;程序报错了&#xff0c;我们可以通过查看日志信息排除和定位问题。 二、日志格式 在启动 SpringBoot 项目时&#xff0c;控制台中默认会打印一些日志&#xff0c;下面我们截取一段日志信息&#xff0c;分析一下日志的格式&…

【蓝桥每日一题]-二分类型(保姆级教程 篇3) #路标设置 #跳石头

今天接着讲二分题型 目录 题目&#xff1a;路标设置 思路&#xff1a; 题目&#xff1a;跳石头 思路&#xff1a; 题目&#xff1a;路标设置 思路&#xff1a; 求&#xff1a;放n个路标后的最小空旷指数 二分查找&#xff1a;对空旷指数进行二分 二分依据: 该空旷指数下放…

支付宝本地生活团购服务商如何申请?两个方法教给你

支付开宝的本地生活来了&#xff01;按支付宝财大气粗的做法&#xff0c;它一旦要推什么项目&#xff0c;那自然会在前期疯狂洒钱&#xff0c;以求通过这种模式快速占领市场。 所以&#xff0c;这次支付宝要推本地生活项目&#xff0c;这一贯做法自然得跟上&#xff0c;只是这…

飞致云及其旗下1Panel项目进入2023年第三季度最具成长性开源初创榜单

2023年10月26日&#xff0c;知名风险投资机构Runa Capital发布2023年第三季度ROSS指数&#xff08;Runa Open Source Startup Index&#xff09;。ROSS指数按季度汇总并公布在代码托管平台GitHub上年化增长率&#xff08;AGR&#xff09;排名前二十位的开源初创公司和开源项目。…

win10pycharm和anaconda安装和环境配置教程

windows10 64位操作系统下系统运行环境安装配置说明 下载和安装Anaconda&#xff0c;链接https://www.anaconda.com/download 下载完后&#xff0c;双击exe文件 将anaconda自动弹出的窗口全部关掉即可&#xff0c;然后配置高级系统变量 根据自己的路径&#xff0c;配置…

SQL备忘--函数

数据处理函数 函数功能OracleMysqlMicrosoft SQL ServerPostgreSQLSQLiteABS(x)计算x的绝对值√√√√√CEIL(x)CEILING(x)大于等于x的最小整数CEIL(x)√CEILING(x)√CEIL(x)FLOOR(x)小于等于x的最大整数√√√√√MOD(x)x除以y的余数(x%y)√√x % y√x % yROUND(x,n)x四舍五入…