|
|
楼主 |
发表于 2013-12-3 20:59:25
|
显示全部楼层
3 ^/ Q H9 d& {* f7 u' h8 D" ]) X0 Y
2 }2 j2 `% w7 ?, r- z9 cOF类型的变量一定要通过MEM_free()进行释放! Z, E' U& e' }9 w
void MEM_free(void *pointer)! {# q1 N7 G& V5 J, W, i4 W
8 @% Q& s, H5 G: _4 {
) s% Z3 n0 V; A. I W
MEM_alloc()) d: R: K- f# P9 b7 i- q J7 O
MEM_crealloc()( F/ n: C @, ^
MEM_free()8 l+ @9 P7 h8 e1 f) ?7 m6 ^/ b
MEM_realloc()# E: l6 g/ U( `) ?" o( e
使用以上内存管理函数,也可以使用C内存管理函数* m. g( E# a9 k$ B0 _* J
Include file: <mem.h>
; X3 j8 G: Q f% M8 l T J3 E v/ }
" I1 [% }1 G+ O ~3 B @函数返回值不为ITK_ok,则有错误发生,必须进行处理; K, p0 E1 J" {) Q9 C# m9 V! P0 u! Q" v
EMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)
9 c) S- E6 S; N; L& k* }) H可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。
Z6 a0 E. w; m7 y7 Y, ]2 z8 i& l6 |0 X2 \
. R I# E7 H. A+ l n& g0 h1 M! C3 V
# ?4 [, V/ W' n, P8 D. d8 R9 q3 b: k5 E: t7 ?4 B
- status = AOM_save( );
+ P2 ]1 m6 A. I7 L/ V - if (status != ITK_ok ) J+ \! J3 @' q2 Q4 p& r
- {, K5 g3 u0 T5 X! N8 T4 |
- EMH_ask_error_text(status, &message);' A1 E) b4 C0 b1 M" @( c
- printf("Error with AOM_save: %s\n", message);& [0 }/ P% }1 l# _5 j) K: {
- MEM_free(message);1 k; F$ Y& v' J" A3 y+ n# }
- return status;! l% g' q5 M/ i" V S3 s
- }$ L# p5 _) Q. N* G/ w) } ?
复制代码- status = AOM_save( fl_tag );- A& `8 K9 c2 t/ r2 F/ \
- if (status != ITK_ok )
: s& J- S+ b9 y& [ - {
) n' r( e5 g" x" o' X" w& { - EMH_ask_errors(&n_errors, &severities, &statuses, &messages);
1 L# `( p# V* o# Y& q; [ - for (i = 0; i < n_errors; i++)
& A! D: }: r/ G' r! v2 A - {, U" ?! n, ~) F. T
- printf( " %6d: %s\n", statuses[i], messages[i] );
. t' ^8 @: P1 x9 n/ O8 s$ E - }
, ~9 I* ~; ?# ~7 c - return status;3 s4 O0 S+ z4 e4 H/ Z$ T; g' H
- }
+ y! k5 y' e6 L2 j: {
复制代码
; l6 s4 Z6 @ R1 t, _4 L) n- o b2 w$ q% B
) u: D3 V4 K* l- Q! C2 } |
|