|
admin
发表于 2013-12-3 20:59:25
" J0 F f* S7 x8 o; m! Q+ `5 s; r4 x- ?* q8 g# g" _! t( P% v
OF类型的变量一定要通过MEM_free()进行释放5 S% \/ u7 ]# @, t
void MEM_free(void *pointer)
! ?* c8 }: ?: [* K0 ]' |9 Q1 M, Q6 o j, w; w+ {* R1 s: w
B( j7 j1 v) I0 p) B. e
MEM_alloc()
f" S" C$ \) g+ {* f$ X$ ]& TMEM_crealloc()
6 c( z; v8 ]* h8 D5 w8 ]MEM_free()
. ? g& ]7 g1 Y1 [ |MEM_realloc()) [1 o8 |/ }3 n) j: ^7 a I
使用以上内存管理函数,也可以使用C内存管理函数4 \* ^$ ^: C' a( R& e, C8 P
Include file: <mem.h>
9 B# d5 {) r1 X2 m P' q
( d; q- ^! Y" J) E
9 e& C& U0 Z+ O; x4 @0 x; W$ k函数返回值不为ITK_ok,则有错误发生,必须进行处理) c4 A7 o: T4 }! h
EMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)
/ @7 E1 ~- y* v9 o* t1 `可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。" r; Y8 a+ u6 L4 E! Z) P2 @
; U0 z4 ?2 Z" I( e' Z4 q
$ y2 k9 Z( U1 A2 S; L3 M) i1 y5 O; h& ^6 ]9 z3 P. V" P2 c
! F' ~1 R4 O$ i6 R" `& O' ~- n% @
- status = AOM_save( );
* _7 |. I6 M) R, p7 E - if (status != ITK_ok )1 J2 O2 d$ b; y) q8 z9 `
- {
& ^9 c$ J2 D1 ]# y* S2 b! h; P - EMH_ask_error_text(status, &message);
Z4 j& b( f- X- t+ I) ` - printf("Error with AOM_save: %s\n", message);
2 U' s# _7 H A+ H( T( j - MEM_free(message);' @6 P; _5 a" o' z. D5 B
- return status;: y/ `' q- r4 q3 A- O2 Z, z0 J
- }1 h6 g* }; @# M2 i
复制代码- status = AOM_save( fl_tag );: H9 x' `& P5 P0 I$ t0 Z6 o/ [
- if (status != ITK_ok )
7 ?8 N, u2 t# k9 `. J" E - {
; U; Q. ^8 B+ A r$ V - EMH_ask_errors(&n_errors, &severities, &statuses, &messages);
7 e3 {7 @' h% K$ b# l - for (i = 0; i < n_errors; i++)
* N9 I" b, u8 T' r - {- |9 z7 [; N% k$ p) y8 Q3 I/ N
- printf( " %6d: %s\n", statuses[i], messages[i] );
$ q! l% `! S- a0 C- [) e - }; p$ Z, ?7 R! r3 |9 C
- return status;6 F! `- h5 c5 \$ L8 ?3 E" C
- }
6 G& H. q5 I$ j' b& m
复制代码 3 u& f; c. |& N) R
. U) F& }4 _+ d, [- x7 C
+ @4 h+ T4 X) G. a |
|