大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> CGI专区 -> Perl教学 第十篇 格式化输出之三

Perl教学 第十篇 格式化输出之三

时间: 2021-07-31 作者:daque

2、方法平局域变量在上例中,你大概仍旧提防到子步调write_letter挪用write输入假名及其展示度数,纵然方法设置在子步调外部仍能平常处事。在第17行中将假名及其展示度数传播给该子步调,在子步调中,打字与印刷方法运用局域变量$letter和$value,如许保护了在foreach轮回中历次输入暂时的假名和值。但是要提防的是,运用my设置的局域变量诉求方法设置在子步调里面,要不就不会输入,所以,用write输入的局域变量确定要用local设置。(local和my详见《子步调》一章)注:perl4中没有my因变量,故不会有此题目。3、采用定义域方法咱们仍旧领会了打字与印刷方法和write因变量如何处事,此刻来看看定义域的方法,见下表:方法 定义域含意 @<<< 左对齐输入 @>>> 右对齐输入 @||| 中对齐输入 @##.## 恒定精度数字 @* 多行文本 每个定义域的第一个字符是行弥补符,当运用@字符时,不做文本方法化。对文本的方法化稍厥后讲。在上表中,除去多行定义域@*,域宽都即是其指定的包括字符@在前的字符个数,比方:@###.##表白七个字符宽,少量点前四个,少量点后两个。4、输入定义域字符在打字与印刷方法里,一定字符如@、<和>被看作定义域设置,那么怎样将它们输入呢?本领如次:format special =this line contains the special character @."@". 四、输入到其它文献缺省级地区级,因变量write将截止输入到规范输入文献stdout,咱们也不妨使它将截止输入到大肆其它的文献中。最大略的本领即是把文献变量动作参数传播给write,如:write (myfile);如许,write就用缺省的名为myfile的打字与印刷方法输入到文献myfile中,然而如许就不许用$~变量来变换所运用的打字与印刷方法。体例变量$~只对缺省文献变量起效率,咱们不妨变换缺省文献变量,变换$~,再挪用write,比方:select (myfile);$~ = "myformat";write;当select变换缺省文献变量时,它归来暂时缺省文献变量的里面表白,如许咱们就不妨创造子步调,按本人的办法输入,又不感化步调的其它局部,如次:sub write_to_stdout {local ($savefile, $saveformat);$savefile = select(stdout);$saveformat = $~;$~ = "myformat";write;$~ = $saveformat;select($savefile);} 五、分页在输入到打字与印刷机时,不妨在每页顶部输入相映的消息,如许的特出文本叫页眉。设置页眉本质上即是设置名为filename_top的打字与印刷方法,比方给规范输入文献设置页眉如次:format stdout_top =consolidated widgets inc. 1994 annual report.在页眉的设置中也不妨包括定义域,页眉中常常运用的一个特出值是暂时页码,存贮在体例变量$%中,如:format stdout_top =page @<<.$%.咱们也不妨经过变换体例变量$^变换设置页眉的打字与印刷方法名,与$~一律,$^只对暂时缺省文献起效率,所以不妨与select因变量贯串运用。缺省情景下,每页长度为60行,不妨经过变换$=来变换页长,如:$= = 66; #页长设为66行此赋值语句必需出此刻第一个write语句前。注:普遍运用分页体制时不必print因变量,由于当用write输入时,perl证明器盯梢每页的暂时行号。即使必需运用print而又不打乱页计数,不妨安排体例变量$-。$-的含意是暂时行到页末之间的行数,当$-到达零时,就发端新的一页,安排本领如:print ("here is a line of output\n");$- -= 1;

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.