问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

想用形参给字符数组赋值。比如 char a[5]; string b="abcde"; char a[5]=b;

发布网友 发布时间:2023-09-23 09:44

我来回答

1个回答

热心网友 时间:2023-09-23 09:48

你的需求有点奇怪,
首先,字符串的问题,如果你是直接在代码中写的字符串常量,则其类型为 const char *
所以你的形参的类型应该是 const char *。那么“把一个字符串赋给一个形参”,只要确保形参的类型正确就好(注,形参中 指针类型和数组类型是等价的,即const char *和const char[] 是等价的)

“形参赋给字符数组” 这个存在很大的问题。因为 C语言中,不能给数组赋值。数组名相当于元素的常指针。要使用 strcpy之类的函数进行拷贝追问就是
char a[5]; string b="abcde";
然后a[1]='a',a[2]='b',a[3]='c',a[4]='d',a[5]='e';这样

追答a[1]='a',a[2]='b',a[3]='c',a[4]='d',a[5]='e';
这将不是一个字符串,字符串的定义是,由null字符结尾的一组字符。

你这里的 string 其实是 std::string 类型,是 在头文件 中定义的模板类的实例。并不是C++原始类型。
std::string 类的使用,请参考STL文档,推荐网站www.cplusplus.com
当然,std::string 对象,我个人认为,使用的最多的函数是
const char * std::string::c_str();
功能为,获得C风格的字符串。
实例代码
char sz[128];
std::string str = "Hello";
printf("%s\n", str.c_str());
strcpy(sz, str.c_str());
if (strcmp(sz, str.c_str() == 0) {
// equal!

}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
急求高人解答 ···管理类的问题 ···!!!急急急···我会在线等... ...如果基层管理幅度为8,高层管理人员管理幅度为3,则该公司中层管理人员... ...发生化学变化的实质是( )A.分子间隔发生变化B.物质状态发生改变C... 下列变化不能说明发生了化学变化的是( )A.变化时有电子的得失或共用电... 下列描述正确的是( )A.固态物质的分子间无间隔B.液态物质的分子不断运动... 原来微信打开这个功能,能够看到马路上的街景,涨知识了! ...百度帐号被人在异地登录了,问题是没有任何人知道我的密码啊?而且也... 医疗事故纠纷和医疗损害纠纷的区别是什么 医疗纠纷与医疗事故的定义是什么? 医疗事故纠纷是指什么的 char的范围是-128到127 那要是赋值为char a=522;那最后a的值会变成什么值呢? 银行贷款借五百万到手二百万,三十年后还,是真是假 外圆磨床换砂轮时咋静平行砂轮的? 静平行了装上去还要咋修平? 讲详细点,高人何在! 什么事件标志着春秋已变更为战国时期?11 东周时期的春秋进入战国有什么标志性的事件吗?3 Excel表格中的文字行间距怎么调整?659 如何自动调整excel表格行距1 Excel表格中的文字行间距怎么调整?727 excel同一单元格中有多行,怎么去调整行间距呢?12 请问苹果公司的数字产品有没有降价的趋势?? 我是土木建筑工程施工其他学科专业本科学生,能否跨专业报读法学本科第二学历? 中国击落了多少U2高空侦察机?71 青岛市的前湾村是那个区? 西安曲江大明宫投资(集团)有限公司怎么样? 砂轮不平衡了怎样校正? 怎样统一调整excel表格的行距?410 玩《泰坦之旅-不朽王座》的时候,用了TQElysion修改了游戏,但是修改之后在进入游戏就类似花屏了一样 封神第一部费翔第一主演吗 泰坦之旅不朽王座修改器为什么不能用 请问个泰坦之旅不朽王座,利用ArtManager修改技能失败的问题 中国击落了几架U2?28 中国击落几架u2306 《鄂渚送池州程使君》 天加中央空调怎么样?天加中央空调的分析介绍6 朋友做生意赔了300万,欠别人有100多万,银行内部说让他背银行呆账,贷款500万到手200万,不 封神榜纣王饰演者 主板中的cmos1两针插座是什么用途的 bios芯片和cmos芯片是同一快芯片吗,他们各有什么作用?22 东周由春秋进入战国的标志性事件是什么?12 春秋过度到战国的标志是什么?有没有什么标志性的历史事件?10 山东省青岛市黄岛区的农村信用社网点有哪些?9 黄岛区的邮政编码是什么?42 中国总共打下几架u2飞机,驾驶飞机的人员如何16 南京天加空调和格力美的空调哪个质量好2 已先过户到自己名下的二手房,公积金贷款详细流程? 二手房过户后可以用公积金贷款么9 怎么找回原来注册的? 怎样找回原来注册的和密码 怎么把爱人一个人的名字用到微信名称里?1 公众号收益单价?