非常感谢您的及时回复!9 v, d: F* ]: j* z% V& B: S% n% s
但我加了这个宏之后再运行,m_pSplitData、m_nNumSplitData最后两个字段还是乱的。
$ Z: o& e' M' a# f9 X另外,我一直使用的C++Builder 6,本身就是32位的。
* [7 n# F/ ~2 K/ M
8 N- X1 g& g4 o$ w- t o; f1 Y' L0 [运行时刻仔细观察struct tagCALCINFO结构,所有字段值一直到m_pCalcParam,经验证,都是对的。2 R v% @& x6 a/ i& d" L) X# Z
那么,唯一的可能,是不是m_pCalcParam字段之后的结构定义有了变化?
7 e6 m' b0 q1 ], t: D% [$ a. p9 e请问您能否给我一份最新的接口定义头文件,多谢!4 z6 X2 ^* N7 s
# t a3 h% k1 X. ?/ ~4 w5 N
附上我手头的结构定义:
- X d8 M8 K* v' A6 Q! k//调用接口信息数据结构
. }; |) {) |- o. ~' J5 |; ntypedef struct tagCALCINFO- Q$ A. a( t8 p0 Z9 b' \
{4 p3 W7 C4 x0 C$ I
DWORD m_dwSize; // 结构大小4 _$ t: ?% ^# b% J( R+ U: B2 O+ t+ S9 O
DWORD m_dwVersion; // 调用软件版本(V2.10 : 0x210)7 i/ _% q& p! [8 a, C8 n7 ?
DWORD m_dwSerial; // 调用软件序列号- X0 q: V1 F; S6 q& J8 d
char* m_strStkLabel; // 股票代码
' ~+ Q! V( R3 A: Z8 p1 V! K BOOL m_bIndex; // 大盘
+ M9 ^# G9 t: P) G% Q) G- s- p$ N% q7 V% W7 Y
int m_nNumData; // 数据数量(m_pData,m_pDataEx,m_pResultBuf,m_pCalcParam[i].m_pfParam数据数量)
9 O( l2 R! h3 f2 V" h7 Z& u STKDATA* m_pData; // 常规数据,注意:当m_nNumData==0时可能为 NULL
8 j* x5 w" j# @& E STKDATAEx* m_pDataEx; // 扩展数据,分笔成交买卖盘,注意:可能为 NULL) P) g% v0 x0 _- u
1 y) l& F% D9 r! L N int m_nParam1Start; // 参数1有效起始位置
2 n H# f& Y( J4 ] float* m_pfParam1; // 调用参数14 t* P4 t( K: l* n3 L0 ~9 Z/ R0 X$ }% w! @4 Q
float* m_pfParam2; // 调用参数2
( b& ?" F0 K; e: B. a Y. i8 b k) t float* m_pfParam3; // 调用参数3" {: o9 Y) \6 O& P! t
float* m_pfParam4; // 调用参数3
$ d) \, V, `' x! A' J, M$ q( ]/ T% P8 T$ {' T! ~0 i) p3 p m
float* m_pResultBuf; // 结果缓冲区
, C3 e; g$ D; K2 q) y5 n1 e- T DATA_TYPE m_dataType; // 数据类型
5 D; j: A, z' Q$ m+ ^, U float* m_pfFinData; // 财务数据7 m3 O" e4 P. [0 T8 a0 y o6 r" X
5 } t5 x$ O2 w' v, g; f4 o// 以上与分析家兼容,所以沿用其结构和名称
' }9 ^& d. u; d. m
. S. m) t. {4 V; \$ A" A// 以下为飞狐交易师扩展
_' ~+ f9 P( r# B2 D
* X* k, O+ a9 S! v. p DWORD m_dwReserved; // 保留- k. ?6 K t9 Y! Q- b A- h
char m_dwReserved2[3]; // 保留' E9 X9 l- m* ]4 J+ J( }) z
7 A+ p* m& O7 P4 l% N' t
int m_nNumParam; // 调用参数数量
" \% k" Q% Y4 D6 |% [ CALCPARAM* m_pCalcParam; // 调用参数数组
* Q9 O: A% E9 ]4 W S# O! o
4 N, ?% T3 S3 f- x DWORD m_dwReservedEx[4]; // 保留
: W3 S8 v6 b) [: d, V2 F0 u$ W v7 }9 M# ~
char* m_strStkName; // 股票名称) p5 t, l9 v, @7 d9 I3 A* g
( _7 F0 `& b3 T# A% E2 ?
SPLITDATA* m_pSplitData; // 除权数据0 a" t* c$ T4 y- ~4 J/ K- m- i
int m_nNumSplitData; // 除权次数2 C! ?/ s3 `+ d9 V! i6 x. d7 X5 C
3 ^3 t" [0 `' c4 r2 W/ Q' {
} CALCINFO;
5 O8 p1 G8 i0 Q' ]# A$ Y- Q2 }8 _% P/ v. u, b. ^* |& ?% X
|