string arr[]={'a', 'b', 'c'}和string arr[] ="abc"有什么区别
如果是char类型的话,这又和string有什么区别
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已结题
c++中字符串数组string 和char问题
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除
- 收藏 举报
2条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
bostonAlen 2022-04-12 16:42关注首先string arr[]={'a', 'b', 'c'},string arr[] ="abc" ,这两句话都是错误的。
string arr[]表示的是一个string的数组,也就是说数组中每个元素都是一个string
所以你得写成string arr[]={"a", "b", "c"}或者string arr[]={"abc", "bcd", "efg"};字符串都是需要双引号的,
至于字符数组,你需要写成这样 char arr[]={'a', 'b', 'c'};
或者初始化一个字符串string arr ="abc";
对于c++的string来说,char* 可以作为string的构造函数参数,因为string内部的实现就是一个char*的data。本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 1无用举报 编辑记录微信扫一扫
点击复制链接分享
编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容
编辑
预览

轻敲空格完成输入
- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
提交
- 2022-04-12 01:59回答 3 已采纳 char arr[]={'a', 'b', 'c'}之后:arr[]={'a', 'b', 'c'}char arr[] ="abc"之后:arr[] ={'a', 'b', 'c','\0'},因为
- 2021-11-04 07:05回答 2 已采纳 vector<string> s1{ "aa","bb","cc" }; auto pos = find(s1.begin(), s1.end(), "bb"); s1.
- 2023-03-10 15:33回答 10 已采纳 参考GPT和自己的思路:你可以使用C++的字符串流(stringstream)来完成这个转换。具体的方法是将char数组中的字符串逐个读取出来,然后将其转换为float类型,最终将转换后的float值
- 2021-05-26 13:26总结来说,通过正确地定义C++ DLL接口,设置C#的P/Invoke调用,以及处理字符串数组和内存管理,可以在C#和C++ DLL之间有效地传递字符串数组。这在跨语言交互和利用现有C++库时非常有用。在Visual Studio 2010环境中...
- 2022-11-05 03:26回答 2 已采纳 字符串分割的参考代码 #include <iostream> #include <string> using namespace std; int main() {
- 2016-01-19 18:18回答 2 已采纳 _bstr_t* buf1 = new _bstr_t[2]; 这一句,buf1 不用初始化吧,也就是说不用 new 空间。请参考: [关于SafeArray的使用说明(转)](http://www
- 2022-04-23 10:18回答 3 已采纳 字符串a没有初始化:可以char a[n+1] = {0}; 或者 char a[n+1]; memset(a,0x0,n+1);
- 2020-09-03 00:44在C++编程语言中,字符串、数组和指针是三个非常基础且重要的概念。了解它们的互相使用方式对于深入理解C++至关重要。首先,我们来看看字符串的三种表示方法。 1. **字符数组**:字符串在C++中可以作为字符数组来...
- 2022-03-25 10:13回答 2 已采纳 #include <iostream> #include <iomanip> #include <fstream> #include <cstring>
- 2021-08-24 08:42回答 3 已采纳 这样写不行,改成 string * qwe() {} 因为函数内部定义的数组,在函数运行结束时生命期就结束了,系统会回收空间,所以外部是接收不到数组数据的,没有意义 参考: C++中不能返回数组
- 2015-12-25 03:45回答 3 已采纳 在定义数组时一般要指明数组长度,如果定义时直接初始化,可以不指定长度,如: char str[]="i love china"; 所以你的写法在语法上是错误的。
- 2020-09-03 00:43在C++编程语言中,字符数组和字符串处理是至关重要的概念。字符数组是用于存储字符数据的数组,每个数组元素可以存储一个字符。由于字符串在实际应用中的广泛性,...理解这两者的区别和用法是掌握C++字符串处理的关键。
- 2018-03-03 11:28ZeroZone零域的博客 C 风格的字符串起源于 C 语言,并在 C++ 中继续得到支持。字符串实际上是使用 null 字符 ‘\0’ 终止的一维字符数组。因此,一个以 null 结尾的字符串,包含了组成字符串的字符。 下面的声明和初始化创建了一个 ...
- 2020-08-28 19:37C++编程中CString、string和char数组之间的转换是非常重要的知识点,因为它们都是字符串类型,但是它们之间的转换却不是那么直接。本文将详细介绍CString、string和char数组之间的转换方法,并提供相应的代码示例。 ...
- 2020-08-31 03:20在C#编程中,字符数组(char[])和字符串(string)是两种常见的数据类型,它们在处理文本信息时有着广泛的应用。理解如何在两者之间进行转换是非常重要的。本篇文章将详细阐述C#中实现char字符数组与字符串相互转换...
- 没有解决我的问题, 去提问
问题事件
联系我们(工作时间:8:30-22:00)
400-660-0108kefu@csdn.net在线客服
- 京ICP备19004658号
- 经营性网站备案信息
公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司