变量名有两个重要属性数据类型和组织结构数据类型指出属于数据
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
IDL中的变量类型
变量名有两个重要属性:数据类型和组织结构。数据类型指出属于数据类型中的哪一种。在IDL中有14种基本数据类型。在图表1中将看到每一种数据类型,每个类型创建的变量的字节大小,变量创建方式,数据类型之间强制转换的IDL函数名称。除了数据类型外,一个变量有一个组织结构。有效的组织结构有标量(例如单个数值)、矢量(真正的一维数组)、数组(最高可达8维)和IDL结构(能包含各种数据类型的变量和组织结构,结构中独立的组成部分称为字段)。
数据类型字节数创建变量数据类型函数
字节型 1 Var=0B
thisVar=Byte(variab
le)
16位有符号整
型2 Var=0
thisVar=Fix(variabl
e)
32位有符号长
整型4 Var=0L
thisVar=Long(variab
le)
64位有符号整
型8 Var=0LL
thisVar=Long64(vari
able)
16位无符号整
型2 Var=0U
thisVar=UInt(variab
le)
32位无符号长 4 Var=0UL thisVar=ULong(varia
整型ble) 64位无符号整
型8 Var=0ULL
thisVar=Ulong64(var
iable)
浮点型 4 Var=0.0
thisVar=Float(varia
ble)
双精度浮点型8 Var=0.0D
thisVar=Double(vari
able)
复数8
Var=Complex(0.0
,0.0) thisVar=Complex(var
iable)
双精度复数16
Var=Dcomplex(0.
0D,0.0D) thisVar=DComplex(va
riable)
字符串
0-3276
7 Var=’’或Var=””
thisVar=String(vari
able)
指针 4 Var=Ptr_New() None
对象 4 Var=Obj_New() None
表1:IDL中的14种基本数据类型。表中显示了每种数据类型的字节数,创建变量的方法,用语数据类型之间强制转换的IDL函数
数据类型初始化函数产生索引值的函数
字节型BytArr BIndGen 16位有符号整型IntArr IndGen
32位有符号长整型LonArr LIndGen
64位有符号整型Lon64Arr L64IndGen
16位无符号整型UIntArr UIndGen
32位无符号长整型ULonArr ULIndGen
64位无符号整型ULon64Arr UL64IndGen 浮点型FltArr FIndGen 双精度浮点型DblArr DIndGen 复数ComplexArr CIndGen 双精度复数DComplexArr DCIndGen
字符串StrArr SIndGen
指针PtrArr None
对象ObjArr None
表2:IDL函数可以创建矢量和多维数组,并将其每个元素初始为0或为它们本身的索引号码。
IDL中的关系运算符:
EQ---------------相等
NE---------------不相等
LE---------------小于等于
GE---------------大于等于
LT----------------小于
GT----------------大于
IDL中常用函数:
FSTAT(lun)-----------------------------查看文件信息STRCTURE FILE_LINES( )-------------------------统计文档中数据的行数lines FUNCTION file_lines, filename
OPENR, unit, filename, /GET_LUN
str = ''
count = 0ll
WHILE ~ EOF(unit) DO BEGIN
READF, unit, str
count = count + 1
ENDWHILE
FREE_LUN, unit
RETURN, count
END
FILE_INFO( )--------------------------文件信息
DIALOG_PICKFILE( )--------------选择文件或文件夹
FIEL_SEARCH( )---------------------查找文件
PRINT-----------------------------------打印
READF----------------------------------打开文件读
READW---------------------------------打开文件写
STRTRIM( STR,0/1/2)----------------去除字符串两头的空格STRMID( )------------------------------读取字符串中指定的一段字符REFORM( )-----------------------------设定数组格式
GET_LUN------------------------------获取逻辑设备号
FREE_LUN-----------------------------释放逻辑设备号
POINT_LUN,lun,0---------------------重新设定LUN位置STRSPLIT( )----------------------------到指定字符