非常感谢您的及时回复!4 G/ d# q) V: E' ^+ \) |, u/ T. |
但我加了这个宏之后再运行,m_pSplitData、m_nNumSplitData最后两个字段还是乱的。
P/ `. ^6 Q" r另外,我一直使用的C++Builder 6,本身就是32位的。
# V5 E" W/ U3 |) ]" ^) u/ w- O9 \" t* j) O" n/ b
运行时刻仔细观察struct tagCALCINFO结构,所有字段值一直到m_pCalcParam,经验证,都是对的。& Q; V$ T" @7 X- z- d, c
那么,唯一的可能,是不是m_pCalcParam字段之后的结构定义有了变化?
4 _/ N' u" V# ?% ^6 I& `8 ?- R6 x请问您能否给我一份最新的接口定义头文件,多谢!7 M6 s1 o" U% I; L3 i
+ K" n1 G6 \. T- T. `' F
附上我手头的结构定义:- P$ _9 q8 I1 W: a% P
//调用接口信息数据结构+ C+ u! r% X8 H+ N
typedef struct tagCALCINFO1 w6 e) b: f8 m0 `. M
{- a F+ Z. F% J! B% r: _$ M/ c/ Z
DWORD m_dwSize; // 结构大小
3 i K3 ^# F. Q% ]0 z- x0 e DWORD m_dwVersion; // 调用软件版本(V2.10 : 0x210)
( C$ j# Y+ {6 t5 v3 D+ M& @ DWORD m_dwSerial; // 调用软件序列号
7 n1 \9 Q/ Z' J, z; o; v0 u char* m_strStkLabel; // 股票代码
: T+ a$ F, o, g, U% D* ]6 n& z! s BOOL m_bIndex; // 大盘0 _7 N" E& j) ]
# \& z: w' ]: {) G$ u4 R3 N int m_nNumData; // 数据数量(m_pData,m_pDataEx,m_pResultBuf,m_pCalcParam[i].m_pfParam数据数量)
8 I5 B# d: |- e' u1 k: Q0 d* W STKDATA* m_pData; // 常规数据,注意:当m_nNumData==0时可能为 NULL. f& O3 {. {- k' ~
STKDATAEx* m_pDataEx; // 扩展数据,分笔成交买卖盘,注意:可能为 NULL
, l& d! r x5 h& c+ H: H
}1 n0 r O7 r4 ^% r9 [0 q int m_nParam1Start; // 参数1有效起始位置
7 o/ o1 q7 t$ h: a8 f b+ a( z [. k7 s float* m_pfParam1; // 调用参数16 q; w; C O1 B* A, k7 ~
float* m_pfParam2; // 调用参数2* H) L+ o; k: ^! E
float* m_pfParam3; // 调用参数33 M& P/ G" n8 K+ v4 Z7 X
float* m_pfParam4; // 调用参数3
1 o; a' U+ \" r5 w
! w. O2 R; B" V: \ float* m_pResultBuf; // 结果缓冲区& p0 a" g ]. H+ w
DATA_TYPE m_dataType; // 数据类型
# |5 R* P$ F$ {" G) Z" D. w float* m_pfFinData; // 财务数据. `! [# S I9 A1 @" W$ Q( C
( M8 ~' z. v8 f' m; B) H5 w8 _7 Y3 W// 以上与分析家兼容,所以沿用其结构和名称4 N, t+ S# W& Z# v, F
) G" H& N) g* \% h* b// 以下为飞狐交易师扩展
# I" o/ v2 }, h# q! V, d' h
Z, D+ @" z' g0 r" W! ]- R1 W DWORD m_dwReserved; // 保留
) `0 V( F* u, ~ char m_dwReserved2[3]; // 保留
{( o" |( b4 a% R) R A
2 V: J# }8 @ B8 `- C/ ^ int m_nNumParam; // 调用参数数量
' j$ Z4 ?. Z: @) w3 t; } ~) V# Y CALCPARAM* m_pCalcParam; // 调用参数数组; c5 f( @# Q! Z9 o3 F( i& ~7 @- Q
; H$ V& B ]: t$ Z
DWORD m_dwReservedEx[4]; // 保留 [ t$ S6 S% t
! o! Z& x2 Q; h2 ]" x
char* m_strStkName; // 股票名称: M, f$ ~( }6 W5 O$ _
3 C1 n' X% F. M% Y) G SPLITDATA* m_pSplitData; // 除权数据
$ f9 L1 {6 I; \- \% V* I int m_nNumSplitData; // 除权次数
! p- S8 p0 Z: T9 O2 ]6 I% M' @5 U( [: c
} CALCINFO;
' k( C! q' _/ j* {& N2 ?5 ^7 E# F. f
- ` L- |1 ]/ r- ~/ F8 V5 G$ Z# M |