PLM之家PLMHome-国产软件践行者

[资料] UG NX二次开发中大量指针的使用技巧

[复制链接]

2014-3-13 08:48:53 4217 1

admin 发表于 2014-3-12 09:58:50 |阅读模式

admin 楼主

2014-3-12 09:58:50

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
+ }. a! D+ G3 N; P; b6 z; b# g
来个实例,大家看看" g" ~7 q6 V2 r' d2 ~% W0 T

4 f! H, x. _8 h/ V  Z/ Z4 f7 L2 }7 C  K4 _! P

; }& _0 }0 |* v- I
  1. int       obj_num = 10;" \- ~& G6 W' I- p) T; N: j* _
  2. tag_t   *object = NULL;& e9 `" [4 V8 t& k6 f" p
  3. object = (tag_t *) UF_allocate_memory( obj_num * sizeof(tag_t), &error ); 2 {* [! o9 s0 b9 O, O) B
  4. object = (tag_t *) UF_reallocate_memory( object, (obj_num+1) * sizeof(tag_t), &error );
    , `. {0 F6 P0 ^
  5. UF_free( object ); + w* E; J: e' |9 t* @; O- Q
  6. char   **strings = NULL;
    ; G% F; A4 W  {! @# q  b
  7. strings = (char **) UF_allocate_memory( 10 * sizeof(char *), &error ); * p- W) w7 l; k2 A* G* D& W5 i8 y! n
  8. for ( i = 0; i < 10; i ++ )
    ' _8 [) X# s7 p) t8 E2 f: ~
  9. {     strings[i] = NULL; ( {0 r9 s9 ^  O% }! A! P
  10.    strings[i] = (char *) UF_allocate_memory( 133 * sizeof(char), &error ); 5 T3 [( `& r: V- M" g
  11. }
    1 G4 P7 I: L3 w" ]
  12. UF_free_string_array( 10, strings );: O3 h! R- i5 b- ]  X# Y5 S
  13. double   (*point_coords)[3];
    3 X) u; i! N1 E4 `
  14. point_coords = (double (*)[3]) UF_allocate_memory( 10 * sizeof(double [3]), &error );
    # s; ~9 }& |9 {
  15. Static void my_function ( int *num, tag_t **object )
    8 m2 d- L5 k0 ~2 a3 Z7 f$ c
  16. {     ( i, \% W. S6 A7 ?4 W2 g
  17. (*num) = 10; ' J' ]7 l6 t. E
  18. (*object) = (tag_t *) UF_allocate_memory( (*num) * sizeof(tag_t), &error ); ' T3 X6 b$ J4 M3 S4 \
  19. (*object)[0] = NULL_TAG;
    7 C, \9 X6 x5 W& Y) v& [
  20. }$ ~4 @% }0 [" l  i
复制代码
typedef struct UF_CURVE_line_s    {   ) K6 I1 V8 q5 }& U/ t
       double start_point[3];                2 T0 q3 u; Q+ p$ g" }- y
       double end_point[3];                  / N2 `9 Y6 p7 h( ?
} UF_CURVE_line_t, * UF_CURVE_line_p_t;
" g1 Q2 T7 n3 z- L# M5 a, }7 ~      
1 z9 t# \' H+ d4 }/ a4 c  C- K3 K$ o         UF_CURVE_line_t my_line;
" Y! K5 R; n/ i5 E5 h0 v) Q8 a         my_line.start_point[0] = 0.0;0 H+ b+ ~! f7 D7 r5 k; `' {3 w+ b
* ~" r- O- i7 D+ T3 v
           UF_CURVE_line_t   *my_line; 7 T9 H" `$ e( k3 _# P, g/ k. h, d/ h
           my_line->start_point[0] = 0.0;   
) C! _+ N* t# [
6 _2 C+ r3 o; r+ `           UF_CURVE_line_p_t my_line;
" V* X/ H  V* f( t5 g           my_line->start_point[0] = 0.0;
3 X& @  q) m" s) i  v& H
" M( `# E( y: ]) _8 z2 z* J/ ?+ X. q- B/ {+ K
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复1

sl2651668521 发表于 2014-3-13 08:48:53

sl2651668521 沙发

2014-3-13 08:48:53

老大 能否给点文字说明 给你我们这些入门级别的人提供点参考
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了