如何获得一个数组的长度
2015-10-28 19:45
225 查看
看到这个问题之前我突然想到我平时用的各种数据结构貌似都是拿来即用,不论是书上看来的,或是学校里学的,想到的应用场景非常小,提到数组只是想到用它来存储数据,未曾想过如果不是我们定义的数组,看到了一个数组之后如何知道它存储了多少数据呢?冷不丁一看到我还真想不出来,但静下来想一想还真是一个挺简单的问题,看来以后要多想,这样才能提高自己的能力。言归正传,写下来对这个问题的一些想法,算是巩固知识了吧。
数组是C语言提供的用于存储数据的一种结构,提供了随机访问数组元素等方便的功能,众所周知它能储存int,double,float,char等基本类型,也可以存储像结构体一样的复杂些的类型(结构体数组),但是有一个共同点就是一个数组只能存储一组相同类型的元素,例如一个数组a
,从a[0]到a
期间的每一个都只能存一种类型的数据,所以想要获得数组存放的元素个数,只要用数组在内存中所占的总长度除以数组任何一个元素在内存中所占的长度即可。
数组中元素个数=数组在内存中所占的总长度 / 数组中一个元素在内存中所占的长度
下面是我写的一个很简单的试验的小程序:
运行结果是the size of the array is 14,验证了之前的说法。
第一次写博客,水平也比较低,希望自己能坚持下去。
数组是C语言提供的用于存储数据的一种结构,提供了随机访问数组元素等方便的功能,众所周知它能储存int,double,float,char等基本类型,也可以存储像结构体一样的复杂些的类型(结构体数组),但是有一个共同点就是一个数组只能存储一组相同类型的元素,例如一个数组a
,从a[0]到a
期间的每一个都只能存一种类型的数据,所以想要获得数组存放的元素个数,只要用数组在内存中所占的总长度除以数组任何一个元素在内存中所占的长度即可。
数组中元素个数=数组在内存中所占的总长度 / 数组中一个元素在内存中所占的长度
下面是我写的一个很简单的试验的小程序:
#include <stdio.h> int main() { int a[]={1,2,3,4,3,2,4,5,6,3,3,4,5,5}; printf("the size of the array is %d\n",sizeof(a)/sizeof(a[0])); return 0; }
运行结果是the size of the array is 14,验证了之前的说法。
第一次写博客,水平也比较低,希望自己能坚持下去。
相关文章推荐
- IOS网络笔记--(三方库)上拉加载下拉刷新
- QT学习资料总结
- 杭电ACM2080--夹角有多大II
- 杭电ACM2080--夹角有多大II
- Oracle 表空间管理
- Java中map接口 遍历map
- JS下对象的复习要点
- freescale:i.MX6ul平台—ext4文件系统挂载错误总结
- 对QT namespace UI的理解
- 动态规划算法学习
- leetcode 110 Balanced Binary Tree
- Winform、WPF、Silverlight、MFC区别与联系
- 【Win10开发】自定义标题栏
- Hibernate一级缓存、二级缓存
- [程序人生]: 判断字符串是否为出栈序列
- listbox
- struts2文件下载相关信息
- 【Python】python-一个class继承的小case
- Android--Fragment的懒加载
- LeetCode---Binary Tree Right Side View