IDL中size功能函数的使用

IDL中的size函数用于获取数据结构信息,包括数据的维数、每维大小、元素总数和数据类型等。返回值是一个数组,可以通过N_DIMENSIONS获取维数,DIMENSIONS获取每维大小,TYPE获取数据类型代码,N_ELEMENTS获取元素总数。使用时,可以像处理数组一样处理size函数的返回值。
摘要由CSDN通过智能技术生成

size函数是IDL中常用的函数,其返回值是数据结构信息的一个数组

其语法是:
Result=SIZE( Expression [, /L64] [, /DIMENSIONS | , /FILE_LUN | , /FILE_OFFSET | , /N_DIMENSIONS | , /N_ELEMENTS | , /SNAME, | , /STRUCTURE | , /TNAME | , /TYPE] )

关键字有:(绿色部分是个人理解,如有错误,请指正)

Expression为标量、数组或者表达式

expression可以看作一个标识符,一个数组名字;[, /L64]可以看作一个数组中设置的元素个数,这里是长64位的。总的含义相当于是a[5](一个数组名+设置的5个元素个数)

DIMENSIONS设定函数只返回每维大小

返回的值有n个代表该数据是n维,然后第1个到第n个值分别是每一维的大小

如:500,600,700

代表该数据是三维数据,第一维大小是500,第二维大小是600,第三维大小是700

FILE_LUN:LUN的全称是Logical Unit Number,也就是逻辑单元号,其主要作用是为了给相连的服务器分配逻辑单元号(LUN)(可以不看)

FILE_OFFSET:文件偏移量,文件中的地址与内存中表示不同,它是用偏移量(File offset)来表示的(可以不看)
N_DIMENSIONS设定函数只返回数据总的维数

如:0——常量或者变量未定义

1——一维

2——二维....

N_ELEMENTS设定函数只返回元素数目

相当于是该数据总的元素个数,包括所有维的,大概是所有维度的元素个数相乘的结果(结果是相近,并不一定准确,因为不是所有维上都能排满元素)

SNAME:结构体名(可以不看)

STRUCTURE:结构体(可以不看)

TNAME设定函数只返回数据类型名称

就是数据类型

TYPE设定函数只返回数据类型的代码

就是数据类型与之对应的数字

类型代码,0:未定义,1:字节型,2:整型,3:长整型,4:浮点...

输出顺序:

第一个:N_DIMENSIONS
第二个到第N_dims+1个: DIMENSIONS

(有n维输出n个数,只有一维就是一个数)
倒数第二个:TYPE
倒数第一个:N_ELEMENTS

使用方法:

注:文章开头红色字体标注了size函数返回的是一个数组,所以我们可以像使用数组一样使用它

例:使用的IDL

arr=[[1,2,3],[4,5,6],[7,8,9]]
l=size(arr)
print,l

2:arr是一个二维数据

3:第一维,也就是列,有三个数

3:第二维,也就是行,有三个数

2:数据类型的对应的数字是2,2是整型

9:arr一共有9个数

arr=[[1,2,3],[4,5,6],[7,8,9]]
l=size(arr)
b=l[0]
c=l[4]
print,b
print,c

见这一篇博文,写得很详细:IDL size函数_小葱拌豆腐-CSDN博客_idl size函数

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值