|
定义的结构体是这样: typedef struct{
int x;
int y;
int label;
}DataPoint;
typedef struct{
int x;
int y;
}PeakData;
typedef struct{
int label;
int peakCount;
PeakData* peaks;
double threshold;
}MaterialData;
比如现在我用函数labelPeaks(DataPoint *point,MaterialData material)以得到material.peaks(*point已知) for(i=0;i<n;i++){
material.peaks[i].x = point[i].x;
material.peaks[i].y = point[i].y;
}
这段代码在运行第一遍的时候就出错了,不知道是不是需要作空间申请什么的或者哪儿错了?求指正 |
|
|
这两个数组是怎么创建的?代码贴出来看看
|
|
| 20分 |
需要提前分配好内存
material.peaks = new PeakData[n]; |
|
代码挺长的就不贴了。。 |
|
|
我按您说的添加了,可还是出现一样的问题 |
|
|
material.peaks没有分配内存,无法赋值 |
|
|
双击定位到错误处,看看哪行出错
|
|
编译没错 就是调试的时候出错: |
|
感谢 ,别的地方还有个小问题,现在已经解决了 |
|
|
传入实参数组point没正确初始化
|
|