数组长度

来源:4-7 查找表和滑动窗口 Contain Duplicate II

慕数据7421358

2020-05-28

bobo老师,
sizeof(array)/sizeof(int) 和sizeof(array)的区别是什么呀

写回答

2回答

liuyubobobo

2020-05-28

sizeof(x) 表示 x 占多少字节。


试一下,一下程序输出是 8。

int a[] = {2, 3};
cout << sizeof(a) << endl;


因为每个 int 占 4 个字节。a[] 中一个两个 int,所以总共 8 个字节。


sizeof(int) 返回每个 int 占多少字节。


所以 sizeof(a)/sizeof(int) 就是 a 里有多少个 int。


继续加油!:)

0
0

慕用0058068

2020-05-28

sizeof(array) 获取的是 数组array 的内存长度,sizeof(array)/sizeof(int) 获取的是 数组array 的元素个数


e.g. int array[3] = {1, 1, 1};

sizeof(array) = 12;    // 元素个数 * 单个元素所占空间,3 * 4

sizeof(array)/sizeof(int) = 3     // 元素个数 

0
0

玩转算法面试-- Leetcode真题分门别类讲解

课程配套大量BAT面试真题,高频算法题解析,强化训练

7408 学习 · 1150 问题

查看课程