目录

1. 变量命名规则

2. 数据类型

3. 基本操作

3.1 数据类型选择

3.2 改变数据类型

3.3 科学计数法


1. 变量命名规则

与其他编程语言一样,IDL也有自己的变量命名规则:

  • 字符规则:首字母必须是26个英文字母,且只能由字母、数字、下划线、$组成,不区分大小写,不能有空格!!!
  • 长度规则:长度不超过128个字符。
  • 特殊规则:不能是系统内部用于特殊用途的保留字名称

IDL保留字:And、Begin、Case、Common、Do、Else、End、Endcase、Endelse、Endfor、EndIF、……(注:不用记)

注:IDL除此之外,还有一些事系统变量,其以!开头,例如:

  • !Pi(π,3.14159)
  • !DPi(双精度π,3.1415927)
  • !DTor(角度转化为弧度的系数,π/180)
  • !Radeg(弧度转化为角度的系数,180/π)
  • !Color(系统色彩表找表)

2. 数据类型

IDL数据类型有17种,包含11种数字数据类型和6中非数字数据类型

类型 数据类型 描述 字节数 范围

Byte 字节形 1 0 ~ 255
int 整型 2 (-2^16/2)-32768 ~ 32767(2^16/2-1)
uint 无符号整型 2 0 ~ 65535(2^16-1)
long 长整型 4 -2^32/2 ~ 2^32/2-1
ulong 无符号长整型 4 0 ~ 2^32-1
long64 64位long 8 -2^64/2 ~ 2^64/2-1
ulong64 64位ulong 8 0 ~ 2^64-1
float 浮点型 4 -10^(-38) ~ 10^(38)
double 双精度float 8 -10^(-308) ~ 10^(308)
complex 复数 8 -10^(-38) ~ 10^(38)
dcomplex 双精度complex 16 -10^(-308) ~ 10^(308)
类型 数据类型 描述

string

字符串
struct 结构体
pointer 指针
object 对象
list 链表
hash 哈希表

3. 基本操作

3.1 数据类型选择

与matlab一样,IDL不需要声明变量类型,自动默认最小的数据存储方式(byte除外),例如,

>>a = 1
>>help,a
A               INT       =        1

此时,程序默认用最小空间存储方式,选择数据类型 int

>>a = 1.
>>help,a
A               FLOAT     =       1.00000

此时,由于数字后面有小数点,则默认为是有小数的数据,程序默认用最小空间存储方式,选择数据类型float

>>a = 65536
>>help,a
A               LONG      =        65536

此时,65536值超过int存储的空间,所以选择能存储这个数的最小空间存储方式,选择数据类型long

>>c
(       1.0000000,       2.0000000)
>>help,c
C               COMPLEX   = (      1.00000,      2.00000)

此时,c为复数,则默认其数据类型为complex

3.2 改变数据类型

IDL 数据类型对应的定义或转化方式如下表所示,

数据类型 定义或转化方式
Byte 0B or byte()
int 0 or fix()
uint 0u or uint()
long 0l or long()
ulong 0ul or ulong()
long64

0ll or long64()

ulong64 0ull or ulong64()
float 0.0 or float()
double 0.0d or double()
complex complex(0,0) or complex(0.0,0.0)
dcomplex complex(0.0d,0.0d)
string '' or "" or string()
pointer ptr_new() or none()
object obj_new() or none()

注:fix是截断取整函数。

例如:定义、转化为byte

>>a = 1
>>help,a
A               INT       =        1
>>a = 1B
>>help,a
A               BYTE      =    1
>>b = Byte(1)
>>help,b
B               BYTE      =    1

例如:定义、转为为float

>>a = 1.
>>help,a
A               FLOAT     =       1.00000
>>b = Float(1)
>>help,b
B               FLOAT     =       1.00000

例如:定义、转化字符串

>>a = 'hulizhen'
>>help,a
A               STRING    = 'hulizhen'
>>b = "联合遥感接收站"
>>help,b
B               STRING    = '联合遥感接收站'
>>c =  string(1234)
>>help,c
C               STRING    = '    1234'

注意:为什么数字转化为字符前面有空白,因为数据有默认的类型,即默认的长度,同时默认的是右对齐,所以才会这样显示,记住,那仅仅是显示,不是空格。

3.3 科学计数法

IDL科学计数法与matlab一样

>>a = 1e-5
>>help,a
A               FLOAT     =  1.00000e-005
>>b = 1e5
>>
>>help,b
B               FLOAT     =       100000.

IDL学习:语法基础-变量相关推荐

  1. IDL学习:语法基础-指针、链表

    本博客将介绍IDL语法基础中的指针.链表的创建及相关的用法.记录自己的学习+整理+理解 . 1. 指针 指针也就是内存地址,是用来存放内存地址的变量,指针可以理解为通讯地址,可以通过通讯地址查询具体的 ...

  2. JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)...

    Java基础语法(变量.常量.数据类型.运算符与数据类型转换) 1.变量 Java中.用户能够通过指定数据类型和标识符来声明变量.其基本的语法为: DataType identifier; 或 Dat ...

  3. 基础语法和变量day2学习内容

    基础语法和变量 内容: --------基础语法 --------print函数的使用 --------变量 --------数学运算符 --------比较运算符 一.基础语法 注释 单行注释 多行 ...

  4. python基础语法及知识总结-Python 学习完基础语法知识后,如何进一步提高?

    ---4.30更新---感谢大家支持,点赞都破两千了.给大家整理出来新的资料,需要的小伙伴来自取: Python练手项目视频如下: Python自学基础知识如下: 以下为原文内容: Python 学习 ...

  5. idea编译的文件怎么用cmd打开_JAVA学习册|基础语法|cmd输出HelloWorld

    看到这个标题,估计已经有小伙伴知识本文要讲什么了,好,下面我们就开始正文 学java最开始的地方 很多老师的书和视频中,在安装完jdk,配置好环境变量,都会带大家用记事本写一个HelloWorld,然 ...

  6. 【Drools二】打工人学习Drools基础语法

    目录 0.项目搭建 1. 规则文件 1.1 构成 1.2规则体 2.基础语法 2.1 注释 2.2 Pattern模式匹配 2.3比较操作符 2.3.1 实践 2.3执行指定规则 3.Drools内置 ...

  7. IDL语法基础(01)

    ⛄IDL简介 交互式数据语言--IDL(Interactive Data Language)是进行应用程序开发.科学数据分析与可视化表达的理想工具.IDL是基于矩阵运算的计算机语言,它语法简单,自带大 ...

  8. 掉进悬崖的小白,捡到python基础秘籍,学习第一周——语法基础,小游戏,无脑循环

    掉进悬崖的小白,捡到python基础秘籍,学习第一周--语法基础,小游戏,无脑循环 人生苦短,我用python 语言的种类: 语言的发展: 什么是python 搭建 Python开发环境: 集成开发环 ...

  9. Python办公自动化学习笔记(二)—Python语法基础

           目    录 一.数据类型 1. python基础变量 2. 数据类型 3. 数据类型转换 4. 列表 5. 字典 二.逻辑控制 三.for与while循环 1. for--in--循环 ...

最新文章

  1. 新建表维护程序SM30
  2. 国外开源网站网页翻译
  3. WSAStartup()函数以及DLL的加载
  4. 敏捷测试理论以及实践(2)
  5. STM32 之十六 深入了解 ADC 工作原理及参考电压变动的影响
  6. 解决:Intellij idea 启动项目报错 error:java: 无效的源发行版: 8
  7. Oracle 创建表 练习题
  8. 2018大厂高级前端面试题汇总
  9. ca盘显示无证书_ca证书提示没有正确的安装驱动程序
  10. 苹果电脑python编程里面怎么切到中文_苹果电脑输入法怎么切换到中文
  11. php无刷新分页插件,帝国cms增加Ajax加载更多功能,无刷新Ajax表分页插件使用说明_励翔科技帝国cms开发中心...
  12. C1——supermap获取对象的中心位置
  13. markdown还需要图床?你out了!用base64代替图床!
  14. python随机画笑脸_如何用python画笑脸
  15. 华为智慧屏鸿蒙系统评价,华为智慧屏V55i配置怎么样 参数介绍运行鸿蒙操作系统...
  16. 使用Python来模拟鼠标的点击; 模拟键盘
  17. declval 的说明
  18. 虚幻蓝图实现只狼钩索系统(5)-UI失效
  19. 路由跟踪工具——笨鸟
  20. 如何使用报表工具制作二维码报表

热门文章

  1. 《Adobe Premiere Pro CC经典教程(彩色版)》——导读
  2. 用scons编译STM32F103工程
  3. SSM网上商城购物系统(前台+后台)
  4. HTML5 input()标签
  5. 微信小程序---小程序中引入的echarts在滑动屏幕时抖动以及不跟随scroll滑动问题
  6. Neo4j Vs JanusGraph Vs Tigergraph
  7. Visio画图-visio 2007中的布局与排列间距在哪里
  8. C#字符串的使用笔记
  9. 高通骁龙845的android手机有哪些,2018年骁龙845手机有哪些?骁龙845手机怎么样?...
  10. SqlMDF数据提取工具