请问这个DSP函数应该怎么调用

qinyd 2014-12-16 08:48:07

请问这个DSP函数应该怎么调用
typedef struct {
int32_t dimSizes[2];
double elt[1];
} DoubleArrayBase;
typedef DoubleArrayBase **DoubleArray;

typedef struct {
int32_t dimSize;
double elt[1];
} DoubleArray1Base;
typedef DoubleArray1Base **DoubleArray1;

void __cdecl DSP(DoubleArray *inputArray, uint32_t Fs_1, uint32_t Fs_2,
double *Energy_1, double *Energy_22, DoubleArray1 *S_imm,
DoubleArray1 *S_realtime, DoubleArray1 *magnitude);

...全文
325 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
qinyd 2014-12-17
  • 打赏
  • 举报
回复
就是这个参数应该如何定义,有3重指针 *** 我是这样定义
	DoubleArray d2Array = new DoubleArrayBase*[10];
	for(i=0;i<10;i++) 
	{
		d2Array[i]=new DoubleArrayBase;
		d2Array[i]->dimSizes[0]= i+1;
		d2Array[i]->dimSizes[1]= i+2;
		d2Array[i]->elt[0]= (i+1)*1.1;
	}
	uint32_t Fs1 = 10;
	uint32_t Fs2 = 10;
	double Energy1;
	double Energy22;
	
	DoubleArray1 Simm = new DoubleArray1Base*[10];
	DoubleArray1 Srealtime = new DoubleArray1Base*[10];
	DoubleArray1 magnitude = new DoubleArray1Base*[10];
	for(i=0;i<10;i++) 
	{
		Simm[i]=new DoubleArray1Base;
		Srealtime[i]=new DoubleArray1Base;
		magnitude[i]=new DoubleArray1Base;
	}
	
	DSP(&d2Array, Fs1, Fs2, 
		&Energy1, &Energy22, &Simm, 
		&Srealtime, &magnitude);
编译是OK的,但是运行时报错如下
<DEBUG_OUTPUT>
2014/12/16 15:33:02.628
DAbort 0x37C03D: 
c:\builds\penguin\labview\components\mgcore\trunk\12.0\source\MemoryManager.cpp(1181) : DAbort 0x37C03D: 
minidump id: 492c1a7c-d0a1-4855-a953-c6c9d213fe7e
$Id: //labview/components/mgcore/trunk/12.0/source/MemoryManager.cpp#13 $
图灵狗 2014-12-17
  • 打赏
  • 举报
回复
直接传参数进去即可,碰上指针参数则加上&符号,例如: double p = 0.5; DSP(..., &p, ...);
FightForProgrammer 2014-12-16
  • 打赏
  • 举报
回复
按照函数声明,把参数准备好穿进去就OK啦??你是哪里不懂么

64,639

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧