4、结构体

1.什么是结构体

是一种复合变量,它可以是变量、数组或结构等类型的集合,通常用于程序参数传递或数据交换
可分为命名结构体和匿名结构体

2.创建结构体

{}来创建
eg.

IDL> struct1={str1,a:1,b:2}
IDL> help,struct1
** Structure STR1, 2 tags, length=4, data length=4:
   A               INT              1
   B               INT              2

str1为结构体的名称,两个成员变量分别为a,b

3.结构体可以继承

用于增加成员

IDL> struct2={str2,inherits str1,c:3}
IDL> help,str2
STR2            UNDEFINED = <Undefined>
IDL> help,struct2
** Structure STR2, 3 tags, length=6, data length=6:
   A               INT              0
   B               INT              0
   C               INT              3

4.创建结构体数组

replicate函数来创建结构体数组,其调用方式如下

IDL> structs=replicate(struct2,10)
IDL> help,structs
STRUCTS         STRUCT    = -> STR2 Array[10]
IDL> print,structs
{       0       0       3}{       0       0       3}{       0       0       3}
{       0       0       3}{       0       0       3}{       0       0       3}
{       0       0       3}{       0       0       3}{       0       0       3}
{       0       0       3}
IDL> 

5.创建匿名结构体

与创建结构体类似,只是不需要赋予结构体名称

6.访问结构体

变量名.成员名或是变量名.index的方式来访问
注意:
结构体一旦创建,其成员变量个数及数据类型是无法修改的

7.结构体操作函数

CREAT_STRUCT()
help,* * *,/struct
N_TAGS()
TAG_NAMES()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值