C语言:strlen与sizeof的区别(与指针搭配)

目录

 一.基础概念

二.以下将结合指针等进行讲解:

1.int a [ ]={ };

1.1 sizeof

1.11 计算整型数组

1.12计算字符数组

 1.2 strlen

2.int a [ ]=" ";

2.1  sizeof ​编辑

 2.2 strlen

 3.二维数组(sizeof)


 一.基础概念

本片将结合指针进行讲解

首先:在数组取地址中

1.sizeof(数组名),这里的数组名表示整个数组,计算的是整个数组的大小

2.&数组名,这里的数组名表示整个数组,取出的是整个数组的地址

 strlen为库函数,而sizeof为一种单目操作符

区别是:

1.strlen(); 是专门用于计算字符数组长度,strlen求字符串长度,从给定的地址向后访问字符,统计 ‘\0’之前出现字符的个数。

strlen返回值是size_t 为无符号数,

2.sizeof();   是用来计算你所使用的操作数所占的空间字节大小,不在乎存放的是什么,只在乎内存大小。

 

sizeof也可用于计算数组长度:

int sz=sizeof(arr)/sizeof(arr[0]);

二.以下将结合指针等进行讲解:

arr[1] == *(arr+1) , 系统读取时都是以 *(arr+i)的方式进行读写

可以理解为写 arr[i]只是为了方便,本质上是 *(arr+i)

1.int a [ ]={ };

1.1 sizeof

1.11 计算整型数组

1.12计算字符数组

 1.2 strlen

2.int a [ ]=" ";

2.1  sizeof 

 2.2 strlen

 

 3.二维数组(sizeof)

二维数组理解:

可以把二维数组想象成一维数组,二维数组的每一行是一个一维数组

 

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值