非常感谢您的及时回复!0 `, o3 Y5 L& e/ j
但我加了这个宏之后再运行,m_pSplitData、m_nNumSplitData最后两个字段还是乱的。7 l) K. P. X& E1 W) F6 {/ {
另外,我一直使用的C++Builder 6,本身就是32位的。# m0 \! m0 U* g' ]7 c2 L
8 {* D! N; R% Y. E" W' S; |
运行时刻仔细观察struct tagCALCINFO结构,所有字段值一直到m_pCalcParam,经验证,都是对的。
! f* e6 q0 Y' u" H4 F那么,唯一的可能,是不是m_pCalcParam字段之后的结构定义有了变化?$ j; k" s) J& w X% B' a" W
请问您能否给我一份最新的接口定义头文件,多谢!
9 i5 F& @9 w1 t* V ?$ ]# p
, u& G4 t4 B l$ M% h附上我手头的结构定义:+ M6 c, ^/ q3 H7 q- y! A
//调用接口信息数据结构
/ a! f* C, H! R9 d& G' L4 X( `( ctypedef struct tagCALCINFO
! b7 ?( B9 V9 U% P9 a# n{: j3 ]7 a# o; g# K0 g) t Y7 i. @; d8 v
DWORD m_dwSize; // 结构大小" l! p+ s* }" V
DWORD m_dwVersion; // 调用软件版本(V2.10 : 0x210)4 Y- g' n7 d# p# L
DWORD m_dwSerial; // 调用软件序列号' q5 k, z* F+ S7 o1 [
char* m_strStkLabel; // 股票代码
! K- c I% D2 t: w BOOL m_bIndex; // 大盘5 F) a* T e" r5 Z7 W/ E4 l+ q
4 k+ Y+ N* }! f6 J& P q+ D int m_nNumData; // 数据数量(m_pData,m_pDataEx,m_pResultBuf,m_pCalcParam[i].m_pfParam数据数量)
% |* d' z: H1 X7 K STKDATA* m_pData; // 常规数据,注意:当m_nNumData==0时可能为 NULL# \5 ^' Q+ v4 Y% k' b0 X" t
STKDATAEx* m_pDataEx; // 扩展数据,分笔成交买卖盘,注意:可能为 NULL
3 E; o5 ~, M2 s$ f, Y$ p% E$ M1 m6 N5 ~, f% R7 S. X5 n
int m_nParam1Start; // 参数1有效起始位置; [2 k3 G1 i3 h2 x
float* m_pfParam1; // 调用参数18 W5 l1 Q' j9 Y/ `5 f- a
float* m_pfParam2; // 调用参数2( F: g0 G; u: @
float* m_pfParam3; // 调用参数33 q; _' [, U" @# L6 a
float* m_pfParam4; // 调用参数3
$ Y! j" T' M% F1 D% s) \% g
4 \" H2 V5 ^ m# a8 Q float* m_pResultBuf; // 结果缓冲区
7 p" ?( t2 Y" X* |0 n' }. i# b8 V6 {9 x DATA_TYPE m_dataType; // 数据类型
, e2 n; s( w+ A$ i! V* r float* m_pfFinData; // 财务数据' }7 }; B- G( S: G. V7 U( G! u
* ~ _% M$ @" e; b6 i6 U$ V// 以上与分析家兼容,所以沿用其结构和名称& I8 ~3 F- {& J# R
B. G% f* z& S# m" r+ [' G// 以下为飞狐交易师扩展
$ v; L T6 V5 T, B
/ Q; a1 l( L; ]7 l0 u, O DWORD m_dwReserved; // 保留7 H" r1 \, t- @' w+ M3 K
char m_dwReserved2[3]; // 保留
+ P, |. o: ]1 U1 j. e1 F! |* @; q+ h: x; B8 `, w! P/ N
int m_nNumParam; // 调用参数数量) c7 { d* y) G5 G$ Z Z7 d
CALCPARAM* m_pCalcParam; // 调用参数数组
: f" e% u: a* L+ D$ I' E( T1 j1 R$ F3 Z: v* W, S
DWORD m_dwReservedEx[4]; // 保留
6 o* L# [3 _+ [% \; X5 R& K" V9 h1 F% s' r7 ]) Z
char* m_strStkName; // 股票名称
* H) l3 }9 G4 z) `0 G; o, D5 B; m3 X6 }- ]' P( @! U
SPLITDATA* m_pSplitData; // 除权数据
, J3 {2 o) I# {6 z# w5 M3 P2 @ int m_nNumSplitData; // 除权次数# V! j2 ^0 S: q# ]$ R! H2 U9 A
8 H: Q3 w+ L; }- S
} CALCINFO;
; _) l! u: w o0 H+ b
" P4 A8 i2 Z) w3 I9 d* u |