月度归档:2012年01月

perl学习笔记

2012.01.26
#!/usr/bin/perl -w
use strict;
#语法检查

printf "1234567890" x 7 . "\n";
#重复7次,也就是总共70列,后面的.是字符串连接符
my @lines=;
#从标准输入中读取数组,一般都是键盘,注意和<>的区别

foreach (@lines) {
my $lines=$_;
#定义标量,并把数组中的元素复制给$lines
chomp $lines;
#去掉数组元素的换行符,chomp的返回值是去掉的换行符的数量,一般都是1或者0
printf "%20s\n",$lines;
#打印从键盘输入的内容
}

改进过的:
#!/usr/bin/perl -w
use strict;
print "Please input scale:\n";
chomp(my $scale=);
#chomp,去掉了后面的换行符
printf "1234567890" x ($scale/10) . "\n";
#x后面的重复数字,会自动舍去小数,按整数计算

print "Please type long:\n";
chomp(my $long=);
$long=("%" . $long . "s" . "\n");
#这里的括号不能省略,省略了会产生歧义
my @lines=;
foreach (@lines) {
my $lines=$_;
#这里可以直接使用$_
chomp $lines;
#print $long;
printf $long,$lines;
}