|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
: t5 i4 h% t% ?1 ~
) m( `( j5 z' y6 E% |
8 W- H# p( O( e3 FNX二次开发源码分享:封装一个函数--将ufun的链表转化成数组
+ ]& D: u& D+ ?( r2 }$ t7 h! s2 E+ |
% [# L$ U* o! S! [/ X
static int allocate_memory(unsigned int nbytes, void **where)
) U7 Z8 G3 T L# U/ T{# b& a4 r* d/ k$ V
int; a+ L1 d' j- N2 z* H6 b- I
resp;
# p, E7 J3 ~8 Z6 _) L1 S
7 }% [5 R: r" ]4 K *where = UF_allocate_memory(nbytes, &resp);( \; o7 C+ `, o+ }$ s
3 r( v) g* P. [+ S5 T/ ^. J
return resp;: N9 ~% X; w& t# x s" ~
}
A! V d0 C7 l/ `5 _9 `4 G
4 ]6 H* x/ T5 O* e" c& astatic int make_an_array(uf_list_p_t *object_list, tag_t **objects)
6 g* K; \3 J" ?- u" n7 f{
: n( l5 m3 K, a6 D( O9 } A' t int' y! E% \6 w, [. z o0 E
ii,
* A+ \, W7 G4 W0 }" s. a1 W. i n;
* z# Y, _) I- A2 L; n& u+ U uf_list_p_t
+ h) E( e3 M; v J3 ^. n( d temp;
$ [+ H3 |. @; k$ z( ]* K
" N$ K6 V9 g1 y& L0 P% V. x9 { UF_CALL(UF_MODL_ask_list_count(*object_list, &n));
! X" S' p$ [& f
) c1 a' T5 q( J! H UF_CALL(allocate_memory(n * sizeof(tag_t), (void **)objects));
: u# d8 v; F# r) Z. g# n4 T( K- n; w/ f' T0 s
for (ii = 0, temp = *object_list; ii < n; temp = temp->next, ii++)
+ @5 s+ ?) _5 s9 L, {% r: E (*objects)[ii] = temp->eid;
6 E& J- h" g- I4 [1 ]
/ K. w7 A# A3 I! ~5 P# I1 s* @ UF_CALL(UF_MODL_delete_list(object_list));
- O. e0 v" o5 n2 F5 X, o5 K2 _3 g* \8 q; u/ B! b) x9 s1 F [
return n;9 E# I/ l3 d1 k1 p) o8 k! `2 k
}2 \2 p0 V( ~8 o3 K- c: [$ z
! U' Y1 n3 V. c0 d4 Y+ u5 Q4 ]
$ M* _2 }5 u% O \+ O" _: i! V |
|