| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1036 人关注过本帖
标题:一段DLL代码转换求助
只看楼主 加入收藏
日出东方行
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2018-1-15
收藏
 问题点数:0 回复次数:0 
一段DLL代码转换求助
通达信涨停板指标:

CLOSE/REF(CLOSE,1)>1.098;

如何将上面一段指标代码写成DLL的代码,本人没有C++基础,正在学习中,所以,求助老师帮助,不胜感谢!
我提供通达信的文件头,和那个示范:

文件头:

#ifndef __PLUGIN_TCALC_FUNC
#define __PLUGIN_TCALC_FUNC
#pragma pack(push,1)

//函数(数据个数,输出,输入a,输入b,输入c)
typedef void(*pPluginFUNC)(int,float*,float*,float*,float*);

typedef struct tagPluginTCalcFuncInfo
{
    unsigned short        nFuncMark;//函数编号
    pPluginFUNC            pCallFunc;//函数地址
}PluginTCalcFuncInfo;

typedef BOOL(*pRegisterPluginFUNC)(PluginTCalcFuncInfo**);  

#pragma pack(pop)
#endif

示范:

#include "stdafx.h"
#include "TCalcFuncSets.h"

//生成的dll及相关依赖dll请拷贝到通达信安装目录的T0002/dlls/下面,再在公式管理器进行绑定

void TestPlugin1(int DataLen,float* pfOUT,float* pfINa,float* pfINb,float* pfINc)
{
    for(int i=0;i<DataLen;i++)
        pfOUT[i]=i;
}


void TestPlugin2(int DataLen,float* pfOUT,float* pfINa,float* pfINb,float* pfINc)
{
    for(int i=0;i<DataLen;i++)
    {
        pfOUT[i]=pfINa[i]+pfINb[i]+pfINc[i];
        pfOUT[i]=pfOUT[i]/3;
    }
}


//加载的函数
PluginTCalcFuncInfo g_CalcFuncSets[] =
{
    {1,(pPluginFUNC)&TestPlugin1},
    {2,(pPluginFUNC)&TestPlugin2},
    {0,NULL},
};

//导出给TCalc的注册函数
BOOL RegisterTdxFunc(PluginTCalcFuncInfo** pFun)
{
    if(*pFun==NULL)
    {
        (*pFun)=g_CalcFuncSets;
        return TRUE;
    }
    return FALSE;
}

望高手老师帮忙,谢谢!
搜索更多相关主题的帖子: DLL 代码 函数 int float 
2018-01-15 14:12
快速回复:一段DLL代码转换求助
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.041259 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved