广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C++中两种字符串定义方式和区别介绍
  • 811
分享到

C++中两种字符串定义方式和区别介绍

2024-04-02 19:04:59 811人浏览 八月长安
摘要

目录前言概念定义方式计算机的存储方式总结前言 在学习字符串这方面的内容时,发现字符串定义的两种方式虽然内容相同但还是有细微的区别 概念 字符串就是一串用双引号连接起来的字符串字面值,

前言

学习字符串这方面的内容时,发现字符串定义的两种方式虽然内容相同但还是有细微的区别

概念

字符串就是一串用双引号连接起来的字符串字面值,简称为字符串

定义方式

上代码

char acter1[]="Hello world";//第一种定义方式
 
char acter2[]={'H','e','l','l','o','w','o','r','l','d'}; 第二种定义方式

此时并不能看出这两种定义方式的区别,拿到VS调试器看看

 

很明显的看出,第一种定义方式末尾添加了一个字符'\0',而'\0'就是字符串的转义字符

而第二种定义方式就没有自动添加结束标志

再看一下彼此的输出结果

 第一种定义方式输出了我们想要的结果,而第二种定义方式则输出了乱码,我们不想要的字符

接下来我们来讨论这个现象出现的原因

计算机的存储方式

在计算机中,内存是连续存储的,我们创建一个数组出来,就是在内存中随机开辟出一块内存空间来

而这块空间的前后有什么数据,我们并不是很清楚

 如上图,在第二种定义方式的影响下,我们没有设定字符串结束标志,那么它就会在后面随机生成,至于是在第几位我们并不清楚,所以会出现乱码

假如我们自己添加上'\0',结果就会出现我们想要的样子,如下图

 而我们也只能控制后面的字符,而无法控制前面的字符

总结

推荐使用第一种定义方式

到此这篇关于c++中两种字符串定义方式和区别介绍的文章就介绍到这了,更多相关C++字符串定义方式内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: C++中两种字符串定义方式和区别介绍

本文链接: https://www.lsjlt.com/news/162264.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C++中两种字符串定义方式和区别介绍
    目录前言概念定义方式计算机的存储方式总结前言 在学习字符串这方面的内容时,发现字符串定义的两种方式虽然内容相同但还是有细微的区别 概念 字符串就是一串用双引号连接起来的字符串字面值,...
    99+
    2022-11-12
  • C语言中字符串的两种定义方式详解
    目录方式1方式2总结我们知道C语言中是没有字符串这种数据类型的,我们只能依靠数组进行存储,即字符数组,而我们定义并且初始化数组有两种方式。下面将给大家介绍这两种方式并且介绍这两种方式...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作