C++里的結構體是這樣的
typedef struct clientinfo_insuinfo_ret_struct{
int insuinforecordscount;
double * balc;
char ** insutype;
char ** psn_type;
char ** psn_insu_stas;
char ** psn_insu_date;
char ** paus_insu_date;
char ** cvlserv_flag;
char ** insuplc_admdvs;
char ** emp_name;
}clientinfo_insuinfo_ret_struct;
于是我在PB里寫個結構體去呼叫它
$PBExportHeader$clientinfo_insuinfo_ret_struct.srs
global type clientinfo_insuinfo_ret_struct from structure
long insuinforecordscount
double balc[]
string insutype[]
string psn_type[]
string psn_insu_stas[]
string psn_insu_date[]
string paus_insu_date[]
string cvlserv_flag[]
string insuplc_admdvs[]
string emp_name[]
end type
我的呼叫代碼是這樣的
clientinfo_insuinfo_ret_struct cirs1
long ll_row
//在嘗試初始化陣列
for ll_row=1 to 50
cirs1.balc [ll_row]= 0.0
cirs1.insutype [ll_row]= space(10)
cirs1.psn_type [ll_row]= space(10)
cirs1.psn_insu_stas[ll_row] = space(10)
cirs1.psn_insu_date[ll_row] = space(30)
cirs1.paus_insu_date[ll_row] = space(30)
cirs1.cvlserv_flag[ll_row] = space(10)
cirs1.insuplc_admdvs[ll_row] = space(10)
cirs1.emp_name[ll_row] = space(200)
next
cirs1.insuinforecordscount=0
long ll_ret
ll_ret=fun(cirs1)
在PB下面看到感覺是初始化的,在除錯時看到好像已經初始化了


這是PB呼叫時圖片,我在VC++里面除錯看到陣列根本沒初始化,因為看到很多0x00000 ????? 可以對比下面直接由C++呼叫時記憶體圖片 cirs1.balc[0] 去接值時直接崩潰了,

這是正常的C++呼叫時的圖片

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/279404.html
標籤:基礎類
上一篇:oracle 監聽打不開
下一篇:求websocket客戶端