c++ 里获得数组元素的个数

比如一个函数voidabc(int*a){}参数传递给a是一个数组,可否获得数组的元素个数如果这种方法不行,该怎么用,最好有例子说明。比如vector啥的... 比如一个函数
void abc(int* a){}
参数传递给a是一个数组,可否获得数组的元素个数

如果这种方法不行,该怎么用,最好有例子说明。
比如vector啥的
展开
 我来答
yunbaishuilan
2008-11-25 · 超过36用户采纳过TA的回答
知道答主
回答量:99
采纳率:0%
帮助的人:112万
展开全部
不可以吧

要想这么用的话 可以把数组的长度事先求出来阿 ,然后用个全局变量 表示 , 这样就可以在函数中应用了

或者 vector

数组定义为 vector<int>array;

存入一个数就是 array.pushback(i);

此时 函数形参要变为:

void abc(vector<int>V)
{
V.size() 就是数组实际的个数
}
百度网友48c3eb6
2008-11-25 · TA获得超过557个赞
知道答主
回答量:74
采纳率:75%
帮助的人:55.3万
展开全部
数组传递时退化为指针,也就是说传递的是数组的首地址,那样写,只能取得数组的首个元素,却无法确定数组的元素的个数。你用的时候仍然可以进行*a++用来取得数组的其他元素,但是无法确定什么时候结束。
所以一般都会带一个额外的参数用来确定数组元素的个数。
void abc(int *a,int n){}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式