作者MasterChang (我爱ASM)
看板C_and_CPP
标题Re: [问题] 取得array长度
时间Sat Jun 6 01:28:26 2009
※ 引述《d5123 (dd)》之铭言:
: 我用sizeof(array)/sizeof(array[0]);
: 可得到此array之长度。
: 但如我我想写成一个方法,只要将array名称当作参数,即可得到array长度。
: 请问这该如何达成呢?
看你的array是在stack空间还是heap空间。
如果是静态的array,长度是已知的东西,没有必要去计算这些。
#define size 10
int array[size];
如果是动态配置,配置时直接建立长度资料就好。
例如:
typedef struct _array
{
int len;
int *data;
}my_array;
配置空间指给my_array.data时,顺便把my_array.len一并处理。不要
去费时作「计算资料长度」的工作。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.74.191.76