C++中字符数组与字符串 赋值问题

问题:写一个函数将一个字符串按反序存放。在主函数中输入一个字符串,通过调用该函数,得到该字符串按反序存放后的字符串,并输出。

string c="asd";

char c1[]=c;//编译不通过,不存在赋值规则

但字符数组可以给字符串变量赋值 如:

char c[]="asd";

string c1=c;

求字符数组长度 引用—>

 

常见的数组就是字符数组和整型数组,今天给大家介绍两种求数组长度的方法。

一.、sizeof函数

 同个这个函数可以求得这两种类型的数组的长度。

 首先sizeof的功能是返回一个对象或者类型所占的内存字节数。

所以我们可以通过以下代码来获取数组的长度

sizeof(数组名)/sizeof(数组类型)                                                                                     
int arr[] = {1,2,3,4,5};
char c[] = "hello world";
printf("%d",sizeof(arr)/sizeof(int));
printf("%d",sizeof(c)/sizeof(char));
 通过上述的方式我们可以类比到任何求数组长度的地方上去,除此之外,有两点需要注意。
1. 通过上述方式求得字符数组的长度总是比我们想得到的多了一,是因为字符数组在最后一位默认有一个\0的空字符,</

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值