标量数据

标量:数字、字符。可以存储在标量变量中也可以从文件和设备中读取。

数字:所有数字内部格式相同——双精度浮点数。

浮点数直接量:程序员在程序中直接键入的数字。

整数直接量:61298040283768==61_298_040_283_768;

操作:

字符串:字符串长度没有限制。

usr utf8;

单引号内的字符串直接量:除了单引号和反斜线字符外,单引号内的所有字符都表示自身。

双引号内的字符串直接量:

字符串操作符:连接操作.  特殊的字符串重复操作符——x。

"fred" x 3=="fredfredfred"。

perl内置警告功能:用use warning;或者 $perl -w my_program或者#!/usr/bin/perl-w。

更加详细的问题描述:use diagnostics;在perldiag文档中列有简要警告信息和详细诊断说明。

如果把'12fred34'当数字用,perl就会发出警报 'Argument "12fred" isn't numeric.'

虽然发出了警报,但perl仍然会按照默认规则把'12fred34'转换成12。

内插问题:进行内插时,Perl会尽可能使用最长且合法的变量名称。要是你想在内插的值后直接输出字母 数字 下划线,可能会碰上麻烦。

解决方法比较简单,和shell脚本一样,Perl里面我们可以用一对花括号将变量名括起来避免歧义,也可以将字符串拆分成两半,在利用链接操作符拼接起来。

代码点(code point)???

操作符:

布尔值:

上面还隐藏着一个技巧,字符串'0'和数字0是同一个标量值,所以Perl会将他们一视同仁。也就是说,字符串'0'是唯一被当成假的非空字符串。

获取用户输入

<STDIN>

<STDIN>读入时会将最后的回车也读进去。如果需要去掉可以用:chomp()操作去掉。

chomp()操作符:将字符串末尾的换行符去掉。chomp()一般用作连用如:

chomp($text=<STDIN>);

undef值:将undef当作数字用,则其为0;如果把其当作字符串来用,则其值为空字符串。

既然undef作为数字时会被视为0,我们的累加器可以构造成如下(sum不需要初值):

同理也可以做一个字符串累加器。

defined函数:行输入操作符<STDIN>有时会返回undef。在一般情况下返回一行文本,但若没有更多输入,比如读到文件尾(end_of_file)时,就需要用undef来表示这个状况。要判断某个字符串是不是空串需要用defined函数。

#!/usr/bin/perl
$madonna=<STDIN>;
if(defined($madonna)){
print "The input was $madonna.\n";
}
else{
print "NO input available.\n";
}

最新文章

  1. 用ORM的思想操作XML文档,一个对象就搞定不要太简单。滚蛋吧!XmlDocument、XmlNode、Xml***……
  2. 使用Cocos2d-x实现微信“天天爱消除”炫耀button特效
  3. 小米4 miui专用 Xposed安装器86版
  4. python之import子目录文件
  5. Scalaz(43)- 总结 :FP就是实用的编程模式
  6. 教你安装CentOS 6.5如何选择安装包
  7. 让show parameter显示隐含参数(12C)
  8. 数字字符与金钱RMB之间的转换
  9. IOS内存管理「2」- 点语法的内存管理
  10. Android 高仿腾讯旗下app的 皮肤加载技术
  11. JavaScript jQuery 入门回顾
  12. iOS动画详解(一)
  13. 认识v$fixed_view_definition
  14. httpunit使用演示样例
  15. Atitit.软件GUIbutton与仪表盘--db数据库区--导入mysql sql错误的解决之道
  16. 【翻译】go语言中的map实战
  17. PROFINET如何实现实时性
  18. Codeforces Round #460 E. Congruence Equation
  19. jquery.validator 手机号验证
  20. python-写入excel(xlswriter)

热门文章

  1. Windows Server 创建环回网卡
  2. 汕头市队赛 SRM 09 B 撕书
  3. 小红帽的画笔(NOIP模拟赛Round 7)
  4. 杭电oj2047-2049、2051-2053、2056、2058
  5. linux c/c++ 代码使用 doxygen 自动生成文档
  6. urb数据结构【转】
  7. 使用VMware 管理服务器
  8. Linux使用命令记录
  9. mysql 故障整理
  10. poj 3348(凸包面积)