- 数字标量
- 字符串标量
- 标量的声明及作用域
标量: Scale,故以$
开头
数字标量- 值为“数字”的标量
- perl中的数字:
- 全部为双精度浮点数
$data = 10;
和$data=10.00
,在perl中是相同的。 - 普通的表示方法: 3.1415926, -500
- 科学计数法: 2.18e22, 2.15E22, 5.16e-10
- 全部为双精度浮点数
- “特殊数字”的表示方法:
- 较长的、不带小数点的数字,可用下划线分开
3141592639 ==> 3_141_592_639 - 非十进制数
八进制,以0开头 ==> 0377,##十进制的255
16进制,以0x开头 ==> 0xFF,##十进制的255
二进制,以0b开头 ==> 0b11111111,##十进制的255
对于长数据,同样支持下划线隔开
- 较长的、不带小数点的数字,可用下划线分开
字符串标量:
标量值为字符串,由引号标识
- 字符串由可输出的字母、数字和标点符号组成
$data="Hello, World"
- 字符串的引号既可以是单引号,也可以是双引号
"Hello, World"
与'Hello,World'
相同 - 可灵活使用
$data="Hello, World" #字符串为'Hello,World' $data='"Hello, World"' #字符串为"Hello,World" $data='\'Hello, World\" #字符串为'Hello,World' $data='\"Hello, World\"" #字符串为"Hello,World"
单引号、双引号表示的区别
- 转义字符只在双引号中有效
\n | 换行 | \r | 回车 |
\t | 水平制表符 | \f | 换页符 |
\l | 下个字符转小写 | \u | 下个字符转大写 |
标量的声明及作用域
- 标量的声明
- 标量可以在任意位置随时声明并使用
$test1 = 5; $test2 =10; ... my$result = $test1 + $test2;
- 标量名可以是字母、数字或者下划线,区分大小写,取名应和用途相关
$a $length_line
- 标量可以在任意位置随时声明并使用
- 作用域
- 标量的作用域指的是一个标量可以被有效访问使用的范围。
- 两种标量的作用域范围
- 包变量
(1)Perl中一个package是一个包,主函数也可以看作一个包
(2)默认情况下的变量为包变量,是包内的全局变量,在整个包及下面的子函数中都可用 - 私有变量,分为my类型和local类型
(1)my变量:只在本层模块可以看到这个变量
(2)local变量: 本层和本层下层的函数都可以看到的变量
- 包变量