Perl 语言笔记(1)-标量类型
来源:互联网 发布:java 数据结构 编辑:程序博客网 时间:2024/04/29 20:45
标量类型
- 字符串的两种形式
- 单引号‘: 除了\'代表‘, \\代表\外引号内的所有内容代表他自己。
- 双引号“: 可以嵌入控制字符,嵌入十进制,八进制,16进制的数字,嵌入转义符号,
- 字符串操作
- 连接符.:$str1.$str2 "hello".“world"
- 重复符x: "ab"x4 // "abababab" 5x4 //5555 注意与乘法运算符的区别5*4 = 20
- 内建的警告信息
- 编译运行时使用 perl -w myprogram.pl
- #!/usr/bin/perl -w
- use warnings; //版本perl 5.6后
- 诊断信息 use diagnostics;或 perl -Mdiagnostics建议后者,诊断信息会影响执行速度。
- 数值比较符和字符串比较符
- 数值比较符==, >=,<=,!=,>,< 字符串比较符:eq,ge,le,ne,gt,lt
- 数值比较符,顾名思义将比较对象按数值类型来比较,字符串比较符,将比较字符串安ACII码来逐个比较其中的字符
- 布尔值的定义 在perl中没有明确的bool类型,一般通过一下方式判断真假:
- 如果值为数字,则0为假,其它都为真
- 如果值为字符串,这''为假,其它为真
- 如果不是上面两种,则转成上面两种再判断(比如引用,hash如果是undef的这转成0)
- 对于字符串'0'由于其等同于数字0,则也认为是假
- 获取用户输入
- <STDIN>行输入符,从系统的标准输入获取一行的内容,返回带回车符\n的字符串。
- chomp,去掉字符串的回车符号,如果结尾有多个也只去掉一个。
chomp($line=<STDIN>) 或者$line=<STDIN>;chomp($line)
本质上是一个函数,返回值是去掉的回车符的个数
- undef
- 还没赋值就使用的变量,通常初始值是undef。
- 对于undef的数字变量通常认为为0,undef的字符串变量通常认为为空字符串
- 可以显示的给变量赋值为undef,也可以用defined($var)来判断变量是否为undef