strlen和sizeof(i) /sizeof(i[0])的差别,是否加字符串后面的\0

1.int i[] = { 1,2,3,4,5,6,7 };代表整数数组,其中存储了 7 个整数,分别是 1, 2, 3, 4, 5, 6 和 7。

char m[] = "11234567";代表字符串,其中存储了 8 个字符,分别是 '1', '1', '2', '3', '4', '5', '6' 和 '7'。字符串以 '\0'(空字符)结尾,因此实际占用的内存空间是 9 个字符。

2.strlen函数用于计算字符串的长度,而不是整数数组。如果要计算整数数组的长度,可以使用sizeof关键字。例如,对于一个整数数组arr,可以使用sizeof(arr)/sizeof(arr[0])来计算数组的长度。

3.strlen

ey: char i[] = "123456";

        int add = strlen(i);

        printf("%d", add);

在电脑打印的数字为6,\0不加入;

4.sizeof(i) / sizeof(i[0])

ey:  char i[] = "123456";

        int add = sizeof(i) / sizeof(i[0]);

        printf("%d", add);

        在电脑打印的数字为7,\0加入;

5.字符串:int a[] = "################"对吗?

不对。使用双引号括起来的内容是字符串字面值,应该用字符数组来表示。应该改为以下代码:

```c++
char a[] = "############";
``` 

这里的 `a` 是一个字符数组,它的大小是 13(包括结尾的空字符 '\0')。双引号括起来的内容会被自动转换成一个字符数组,其中包含 12 个 '#' 和一个空字符。

注:本小白写给自己的,如果有错的,希望得到大神的赐教,如果您不喜欢,勿喷,这只是个人娱乐。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值