想问问c++中sizeof求形参数组的长度的问题

想问问c++中sizeof求形参数组的长度的问题

问题描述:

我想构造一个求数组长度的函数,但是因为形参数组在传递给函数时退化成指针了,而sizeof()指针的长度就一直恒定了,所以想问问还有没有有其他的方法来构造函数求数组长度

img

如果没有其它条件的话,你这样是不行的。整型数组参数还是需要给出长度
或者说你有明确的结束值,就像字符串为什么不需要给出长度,是因为它明确0为字符串结束标志
作为具体代码,你的int a[]数组如果有约定,比如以0,-1,0xFFFFFFFF、9999之类的为无效值的话,也可以作为结束标志来判断数组长度。

写成宏就行了