关于作为函数形参的数组的长度
- C/C++ code
struct point{int x;int y;};point fun(char*pt,short AP){.........}void main(){short ap=2;point pt[5];//每个pt都代表一个传感器的节点坐标pt[0].x=1;pt[0].y=4;pt[1].x=2;pt[1].y=6;fun(pt,ap);}
我想在函数fun()里判断主函数的pt的数目——也就是传感器的数目,跟ap的量是不是一致的,请问怎么判断?
[解决办法]
退化为指针,没法判断。除非你修改C/C++规则
[解决办法]
struct point
{
int x;
int y;
int flag; //初始化了 就置1做标志
};
函数里面遍历节点 判断flag
[解决办法]
C/C++没有内存边界检查的功能,所以这个是没有办法的,除非你自己编写类,让你的类具备这样的功能。