|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
9 j$ F9 U* C8 ^; S+ W* K
: p; n% f _! K; ]& h% z" y1 {8 F, W Q( X; `% @! o9 C% ^
NX二次开发源码分享:封装一个函数--将ufun的链表转化成数组
/ A& B _/ a& m+ b3 k, l. q2 {
& ]+ e& ^: }& l9 P% }$ [" \6 Y3 w M# q. b2 ?0 s. y
static int allocate_memory(unsigned int nbytes, void **where) E }! O. E+ W* ~
{% R* a4 w2 Q3 G) a! m
int: x! J8 q' Z% S
resp; B' v2 F7 o% h0 k0 d8 |7 @
: W+ ~$ x: p1 I0 y' w
*where = UF_allocate_memory(nbytes, &resp);
) O: m+ r6 ]3 U9 V. h# P8 {
4 c- \! S( h1 A) F return resp;
+ S' E/ C% R3 r9 V}* S/ u" \+ C5 w$ \, s. O
3 f @4 X& ^6 e" X* [static int make_an_array(uf_list_p_t *object_list, tag_t **objects)" X( ^; X4 S: M4 o/ R% x
{
! F. h- Z7 L* Q4 \4 E int, T s$ _2 M5 Q% s; b
ii,; g3 Y |* e' S- ]
n;& L+ X0 f/ Q: Z1 {3 P4 c
uf_list_p_t
* a( A- S, U+ m' o$ j) p: d0 L temp;
& C, d' Q8 w: d+ [$ v- c7 k7 ?9 S0 U) O5 }. ]6 Q
UF_CALL(UF_MODL_ask_list_count(*object_list, &n));) V, a5 h" M9 m/ o* A; d
* C. h- L9 G# N/ K s$ Z
UF_CALL(allocate_memory(n * sizeof(tag_t), (void **)objects));% y1 `. S5 g* E' L. K/ m
7 ^' s* R3 b1 A4 [' y
for (ii = 0, temp = *object_list; ii < n; temp = temp->next, ii++)/ b, \: \9 I. |$ x; E4 j" Y
(*objects)[ii] = temp->eid;. I+ _. q" ]% [7 G* @' h
. ~. N4 `/ Z5 R0 ` UF_CALL(UF_MODL_delete_list(object_list));2 J/ T* Y p! |) `3 F4 @
3 s6 K+ s8 r! w4 j
return n;4 H) ^5 Q; b7 H9 ]& e' n
}9 O0 d8 w4 M; S/ |1 U- j
; R& l* U8 o- }5 R' z
/ C" {! O1 l4 U+ @1 f- V( H Q |
|