C/C++ 获取数组的有效长度
有人提议说在C/C++中,使用
sizeof(array) / sizeof(array[0]);
来获取数组的长度(C++中可以使用模板,进行类型匹配)这是不可行的。
<pre name="code" class="cpp">int a[60] = { 1, 2, 3, 4 }; cout<< sizeof(a);输出为2400。
而如果程序更改为:
char a[] = { 1, 2, 3, 4 };虽然大小的确是16,但是已经没有实际的意义了。
所以C/C++中并不能获取数组的长度,只能使用指针去判断结束的位置之后计算。
如果是字符型数组:
<del>char a[60] = { 1, 2, 3, 4 }; int t = 0; while (a[t] != " ") t++; cout << t;</del>
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: php 查看数组占用的内存大小
- 下一篇: C++里面的print()函数的问题
copyright © 2008-2019 亿联网络 版权所有 备案号:粤ICP备14031511号-2