|
通过下面的程序想获取选中的特征的表达式,编译成功,但运行后只能选择特征,不能显示选中的特征的表达式,甚至连消息对话框都不能显示,大家看一下这段程序是什么地方出了问题
8 @& H) G. `; x1 ^, Xchar cue[] = "cue message";
' @3 L: ]9 L0 w+ X- Y% jint cnt=0, resp=0;' H3 i6 L1 |3 k( x' ` Q( y
tag_t *feats;- r: [( K1 [$ w$ I
char *feat_type;
$ L8 v+ [- K [" cFILE *fp=NULL;
# [: W# _6 ^+ d! i% A& ~8 F7 Cchar *string;4 S% b$ m+ c8 t( q% \ y
tag_t *exps;
+ {& Z7 \! D O# G: E7 Gint number_of_exps=0,i;
! p A% ?7 B5 kchar buf[UF_UI_MAX_STRING_LEN+1];/ u A h7 ~( o
char err_msg[MAX_LINE_SIZE+1];/ l# t+ O3 L/ n. |1 r
char *expr_str;$ V' J! C E; G0 a
char str[100];! I$ _4 ~: }/ C( L) x
$ j7 \ ^* A0 J
fp=fopen("E:\\test.txt","w");! B( [0 U3 I1 s/ e. d+ b6 s
UF_CALL(UF_UI_select_feature(cue, NULL, &cnt, &feats, &resp));
0 `$ R$ J- k# fUF_MODL_ask_feat_type(feats,&feat_type);1 N( |7 o/ b* u2 i+ R/ ]" U }
fprintf(fp,"\nfeature的id=%u,类型%s\n",feats,feat_type);& B1 g9 r2 X, ^& N! ?$ p
UF_CALL(UF_MODL_ask_exps_of_feature(feats,&number_of_exps,&exps));
( ~' D& ]- k( Y0 ^sprintf(buf,"number_of_exps=%d\n",number_of_exps);
: \( l) @, x/ Y9 s# B5 x# K) f 7 H" x1 C6 ^5 \) P( Z
UF_UI_open_listing_window();
; ?4 `- m, L' P7 _3 O UF_UI_write_listing_window(buf);4 @4 Q" K* w( u% A7 R
UF_UI_write_listing_window("Asking expression strings\n");
/ A+ s2 \! L6 M/ ^. ^4 t for(i=0;i<number_of_exps;i++)
; d9 l# s8 m. I: e {
" b+ g1 R+ K# n7 d UF_CALL(UF_MODL_ask_exp_tag_string(exps[i],&string));# C) l. u! k, i* X% o* t- N
sprintf(buf,"Expression %d: %s\n",i,string);2 ~! N* y8 c: ^1 W8 I
UF_UI_write_listing_window(buf);
/ D! [+ u3 b. D UF_free(string);4 [4 {8 M( @3 u- y* ?- a& X
}7 C! ~& F. T1 m$ E' a
fclose(fp);
) \* b9 w; l8 k" C( EUF_free(exps); |
|