zoukankan      html  css  js  c++  java
  • 输入与输出 Perl 第五章

    1.

    chmop($line=<STDIN>) ;  #读取下一行,截掉换行符。

    2.

    while(defined($line=<STDIN>) {

    print " $_ ”;

    }

    3.

    while(<STDIN>) {

    print ”$_";

    }

    等价于

    while(defined($_ = <STDIN>) {

    print " $_";

    }

    4.钻石操作符 <> 时行输入操作符的特例。不从键盘取得输入,而是用户指定位置。

    $ ./my_programe fred barney betty

    while (defined($line =< >) {

    chomp($line);

    print ""

    }

    等价于

    while(<>) {

    chomp;

    print " $_";

    }

    5.调用参数

    <> 不会去检查命令行参数,其参数来自数组 @ARGV #Perl 解释器事先建立起来的特殊数组。

    @ARGV = qw /a b c d/;

    while (< > ) {

    chomp;

    print "$_ in some stooge-like file !";

    }

    6.输出到标准输出

    print @C  #abcd

    print "@C"  #a b c d  有空格

    一般情况下程序的输出先到缓冲区,积攒起来,量大再造访外部设备。

    print <> #相当于Unix的cat

    print sort <> # 相当于Unix的sort

    printf 格式化输出。和C语言类似。

    7.打开文件句柄。

    Perl 提供的默认文件句柄:STDIN STDOUT STDERR

    其他句柄,使用open操作符告诉Perl

    open  CONFIG,'dino'  #打开文件dino,从句柄CONFIG读取

    open  CONFIG,'<dino'  # < 为只读

    open  CONFIG ,'>fred'  #打开文件句柄CONFIG,并输入到新的文件fred.

    open CONFIG ,'>>fred'  #追加式打开,若fred存在则追加在尾部,若不存在,则创建再写入。

    my $selected_output = 'my_output';

    my $sucess = open LOG , "> $selected_output";

    if (! $sucess) {

    #

    }

    8.关闭句柄 close  LOG

    9.die处理致命错误

    0  sucess

    1  语法错误

    2 处理程序时发生错误

    3 找不到某个配置文件

    if  (!open LOG,'>>' ,'logfile') {

    die "can not create logfie : $!"   # $!指可读的系统错误信息,如permission denied / file not find

    }

    Die 自动显示Perl 程序名和行号;

    若不想显示则在末尾加 换行符。

    if(@ARGV < 2) {

    die "Not enough argumeng "  #不显示程序名和行号

    }

    10.改变默认文件句柄

    select BD

    $| =1;   # 立刻刷新输出,不经过缓冲区缓存。

    print  BD " i hope this will come true!“

  • 相关阅读:
    软件工程第一次作业
    Python正则表达式学习摘要
    个人作业——软件工程实践总结作业
    个人作业——软件评测
    软件工程实践2019第五次作业--结对编程的实现
    软件工程实践2019第四次作业
    软件工程实践2019第三次作业
    软件工程实践2019第二次作业
    软件工程实践2019第一次作业
    个人作业——软件工程实践总结&个人技术博客
  • 原文地址:https://www.cnblogs.com/lelin/p/11207148.html
Copyright © 2011-2022 走看看