工作人员正在思考。。。
那是你的用法问题,asd:c>10 ; 调用后,传递是一个数组而不是一个常数,你要用数组的方法来读取
const float* pValue = pData->m_pfParam1; //参数1
int nFirst = pData->m_nParam1Start; //有效值起始位
if( nFirst >= 0)
{
for ( i = nFirst; i < pData->m_nNumData; i++ )
{
fTotal = 0.0f;
pData->m_pResultBuf[i] = pValue[i];//直接返回
}
}
那是你的用法问题,asd:c>10 ; 调用后,传递是一个数组而不是一个常数,你要用数组的方法来读取
const float* pValue = pData->m_pfParam1; //参数1
int nFirst = pData->m_nParam1Start; //有效值起始位
if( nFirst >= 0)
{
for ( i = nFirst; i < pData->m_nNumData; i++ )
{
fTotal = 0.0f;
pData->m_pResultBuf[i] = pValue[i];//直接返回
}
}
--------------------------------------------------------------------------------------------------------------------------------------
版主还是不行啊,看下面我修改的DLL函数:
__declspec(dllexport) int WINAPI MYMAVAR(CALCINFO* pData)
{
int i;
if(pData->m_pfParam1 && //参数1有效
pData->m_nParam1Start>=0 && //参数1为序列数
pData->m_pfParam2==NULL) //有1个参数
{
const float* pValue = pData->m_pfParam1; //参数1
int nFirst = pData->m_nParam1Start; //有效值起始位
if( nFirst >= 0)
{
for ( i = pData->m_nNumData-1; i < pData->m_nNumData; i++ )
{
pData->m_pResultBuf[i] = pValue[i];//直接返回
ofstream SaveFile("11111.txt", ios::ate | ios::binary);
SaveFile << pValue[i];
SaveFile.close();
}
}
}
return -1;
}
---------------------------------------------------------------------------------------
按道理应该是只输出当天的1个数值,但输出的结果还是所有K线啊,有几根K线就输出几个数值!
你到底需要的是什么,本身传递过来的就是一个序列数组
你用最后一个k线的信号不就行了,不用用FOR循环
if( pValue[pData->m_nNumData] )
{
//执行下单动作
}
你用最后一个k线的信号不就行了,不用用FOR循环
if( pValue[pData->m_nNumData] )
{
//执行下单动作
}
版主还是不行,你的这句话加上后一运行就死机,自动退出程序.
__declspec(dllexport) int WINAPI MYMAVAR(CALCINFO* pData)
{
int i;
if(pData->m_pfParam1 && //参数1有效
pData->m_nParam1Start>=0 && //参数1为序列数
pData->m_pfParam2==NULL) //有1个参数
{
const float* pValue = pData->m_pfParam1; //参数1
int nFirst = pData->m_nParam1Start; //有效值起始位
if( pValue[pData->m_nNumData] )
pData->m_pResultBuf[i] = pValue[i];//直接返回
ofstream SaveFile("11111.txt", ios::ate | ios::binary);
SaveFile << "99";
SaveFile.close();
}
return -1;
}
版主就是大师,太感谢啦,解决了,少了个括号,少了个-1.解决这个问题的另一个方法是用for语句,但不如这个方法好.
正确的是
__declspec(dllexport) int WINAPI MYMAVAR(CALCINFO* pData)
{
if(pData->m_pfParam1 && //参数1有效
pData->m_nParam1Start>=0 && //参数1为序列数
pData->m_pfParam2==NULL) //有1个参数
{
const float* pValue = pData->m_pfParam1; //参数1
int nFirst = pData->m_nParam1Start; //有效值起始位
if(pValue[pData->m_nNumData-1])
{
ofstream SaveFile("11111.txt", ios::ate | ios::binary);
SaveFile << pValue[pData->m_nNumData-1];
SaveFile.close();
}
}
return -1;
}