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

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

[复制链接]

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

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

admin 楼主

2014-3-12 09:58:50

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

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

x

7 |4 M% a( ?( o1 w/ [, M" F6 d5 k来个实例,大家看看+ W* l6 h! B9 E: f6 ]" X. X
# ^4 P5 h# l, C+ j; [6 a- @

. {+ n0 D0 t6 q! i
0 t6 L4 c3 F9 Q, b
  1. int       obj_num = 10;
    3 _8 f. ]+ ^8 N& Y
  2. tag_t   *object = NULL;; d- n. w- o  c7 v; r
  3. object = (tag_t *) UF_allocate_memory( obj_num * sizeof(tag_t), &error ); 6 ]$ y* y1 c0 B2 l
  4. object = (tag_t *) UF_reallocate_memory( object, (obj_num+1) * sizeof(tag_t), &error );
    / q) {8 X* m- ~9 _- |
  5. UF_free( object ); 6 w" |9 `/ u5 M, l
  6. char   **strings = NULL; ' ~  _& _! @$ `
  7. strings = (char **) UF_allocate_memory( 10 * sizeof(char *), &error );
    2 N. N" G0 F: L
  8. for ( i = 0; i < 10; i ++ ) ; L$ y8 l, c0 {4 z
  9. {     strings[i] = NULL;
    : d9 O2 r5 G( T5 m5 H' ~
  10.    strings[i] = (char *) UF_allocate_memory( 133 * sizeof(char), &error ); $ A, r& Z* U6 h$ B/ t, z
  11. }
    + v+ o$ p& x9 s" U* e) b; S0 Q& k9 f
  12. UF_free_string_array( 10, strings );
    3 t$ E' v) l5 R; ^% c8 p2 b; h
  13. double   (*point_coords)[3];. W% D" S4 e, j6 u. z
  14. point_coords = (double (*)[3]) UF_allocate_memory( 10 * sizeof(double [3]), &error ); # S: p* E8 c) M" s3 [+ H
  15. Static void my_function ( int *num, tag_t **object )7 V1 Y6 k! O6 z
  16. {    
    1 {3 y6 x: g1 o- |
  17. (*num) = 10;
    ) `# `- a; A6 _. t7 l1 A- P& X
  18. (*object) = (tag_t *) UF_allocate_memory( (*num) * sizeof(tag_t), &error );
    2 \) Z- x3 T3 G, Q
  19. (*object)[0] = NULL_TAG; 3 s. }/ \  g, T, @
  20. }- e9 Z" t$ z+ e' q
复制代码
typedef struct UF_CURVE_line_s    {   , N$ a/ R  i" \/ Y, r( ~( H
       double start_point[3];                5 l5 L6 R, s! x) z4 ~4 o
       double end_point[3];                  
9 M( ]; z1 d: ~  m8 B1 G } UF_CURVE_line_t, * UF_CURVE_line_p_t; : k1 M& o1 @# Y6 I3 A$ V
      
1 h  F: b! r2 w! K, U& |$ W         UF_CURVE_line_t my_line;
4 k( S6 u* H* v  `* X         my_line.start_point[0] = 0.0;% c! Z: ?4 T$ k; ~+ L% T* {
" k5 h: t; O  z% J
           UF_CURVE_line_t   *my_line; 2 i  `! n, M! b% ?, `
           my_line->start_point[0] = 0.0;   % j1 A6 E# `2 P$ W3 X3 V

& t) F4 W+ ^. ^- u% ]( o           UF_CURVE_line_p_t my_line; 5 r6 G. y. L3 ^$ [
           my_line->start_point[0] = 0.0;
1 D/ [3 N6 S3 P8 n8 T8 ]  P: y  J
3 z2 t9 ~  I2 j7 d* T1 N" [7 t, k' |6 G2 M
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了