非常感谢您的及时回复!
9 ]( W4 o* e4 w, m8 E; f7 H但我加了这个宏之后再运行,m_pSplitData、m_nNumSplitData最后两个字段还是乱的。- F. p! O( |. }8 c; U+ t% x, i# ]
另外,我一直使用的C++Builder 6,本身就是32位的。
9 r, L5 ~3 W$ F0 v" U# P
; v& E* }' `2 h9 _9 g运行时刻仔细观察struct tagCALCINFO结构,所有字段值一直到m_pCalcParam,经验证,都是对的。4 i8 K# V5 |# f% P8 k
那么,唯一的可能,是不是m_pCalcParam字段之后的结构定义有了变化?
, F, U' I* Y3 P6 ]& b请问您能否给我一份最新的接口定义头文件,多谢!2 a8 p: P" Y, D+ b6 a$ z
$ U4 H _3 m" l W. V- q8 C8 S& t
附上我手头的结构定义:
9 R% \" b/ F/ T3 w' `1 s5 ]//调用接口信息数据结构
' U% G+ w# ^: j$ Dtypedef struct tagCALCINFO' U+ h2 {& n5 e
{, {/ |: o3 m/ h/ T) V8 l& L5 b6 V
DWORD m_dwSize; // 结构大小
6 d% ^8 C8 u" o3 [% H2 U DWORD m_dwVersion; // 调用软件版本(V2.10 : 0x210)% ?$ c7 ^7 o' {" E0 J% S7 Z$ g
DWORD m_dwSerial; // 调用软件序列号
6 j# t! s c r1 |5 q, k3 ? a char* m_strStkLabel; // 股票代码" g2 A. L6 O5 v
BOOL m_bIndex; // 大盘
. U% |$ E, N& r+ G I# R% r/ q
& U7 Y$ F" W, L; Y8 N9 @& E int m_nNumData; // 数据数量(m_pData,m_pDataEx,m_pResultBuf,m_pCalcParam[i].m_pfParam数据数量)3 j* d3 n$ |$ H) c. e% Q
STKDATA* m_pData; // 常规数据,注意:当m_nNumData==0时可能为 NULL% B4 ]& d5 ?6 g* H! I6 G+ H1 g
STKDATAEx* m_pDataEx; // 扩展数据,分笔成交买卖盘,注意:可能为 NULL; F! [4 H2 u5 D
. Y2 n0 d0 l2 r# b
int m_nParam1Start; // 参数1有效起始位置
% n; x8 X% n( {+ K float* m_pfParam1; // 调用参数1
" Q9 H& ~% ~& M8 _$ X3 b5 W, o7 b( P float* m_pfParam2; // 调用参数2
$ s) S+ k, O/ v' L float* m_pfParam3; // 调用参数31 n! t: U' t/ l; [+ t4 ^/ G
float* m_pfParam4; // 调用参数32 w* P) b+ m4 F2 V' E5 X
% m5 F3 v/ s3 F. Z# s c
float* m_pResultBuf; // 结果缓冲区
! y! \0 W+ D" h* A DATA_TYPE m_dataType; // 数据类型
9 s) ?5 C3 R; h: J9 I8 \ float* m_pfFinData; // 财务数据
( d6 g* S Q! X7 N E
0 M% ]+ \, }* V: R// 以上与分析家兼容,所以沿用其结构和名称+ N1 R* a6 F( n+ U9 i" k2 u! n
) K$ C" V/ @7 p: o( S0 C// 以下为飞狐交易师扩展
2 X' r5 S m P) A( w2 V& ?# Z( c* U
8 h' W5 n. s6 [2 V6 L: v; m( S DWORD m_dwReserved; // 保留. ^2 H4 Y) N& p; s! ]
char m_dwReserved2[3]; // 保留
6 J# i( E/ X) j5 u/ C1 Q, Q" o0 s. Q; c
int m_nNumParam; // 调用参数数量
8 D8 ^5 C* r; ?( v# f8 q' O CALCPARAM* m_pCalcParam; // 调用参数数组
: a/ d& s! W& C6 N$ v% v0 h( }# ?
( v7 o" j k+ W, _: J$ |" |( G0 U- T DWORD m_dwReservedEx[4]; // 保留
' L6 `$ @ i- R Y0 r6 X7 c5 g& O
' k4 R L$ D& [% V9 ^* D2 j char* m_strStkName; // 股票名称
/ B; k8 _/ n$ k8 M& Z9 K, R* u; C
3 U X: _+ i* n- p SPLITDATA* m_pSplitData; // 除权数据2 N7 L' s+ i2 C
int m_nNumSplitData; // 除权次数0 m) l' x7 Y. K. @, @
: t6 N9 N$ P a} CALCINFO;
4 w! t' G7 _& j4 [' x$ M- s& ^7 Q& D+ v" `: n! E. `) Y
|