处理 SSI 文件时出错
网站工程
 规划发展   网页美工   标记语言   网页编程   Web服务器   广告攻略   开发常识   趋势研究   网站维护   网站数据库   网页设计工具
 论坛
您现在的位置: IT文谷 >> 网站工程 >> 网页编程 >> CGI >> 文章正文
perl常问问题集--第三篇perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇
perl常问问题集--第三篇
perl常问问题集--第三篇perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇
处理 SSI 文件时出错
perl常问问题集--第三篇perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇

目录 
篇名 
概述 
我如何作 (任何事)? 
如何以互动的方式使用 Perl? 
有 Perl shell吗? 
如何替我的 Perl程式除虫? 
如何检测 (profile)我的 perl程式? 
如何替我的 Perl程式作交叉参考 (cross-reference)? 
有 Perl专用的美化列印程式 (pretty-printer)吗? 
有 Perl的 ctags吗? 
哪里有 vi用的 Perl巨集? 
给 emacs用的 perl模式又要去哪抓呢? 
如何在 Perl里使用 curses? 
X或 Tk如何与 Perl配合呢? 
如何不靠 CGI或 Tk之助作出简单的目录(选单)? 
我可以动态地将 C常式载入 Perl吗? 
什麽是 undump? 
如何让我的 Perl程式跑得更快些? 
如何让我的 Perl程式吃少一点的记忆体? 
把指标传回到区域资料是不安全的做法吗? 
我如何释放一个阵列或杂凑阵列以缩小我的程式尺寸? 
如何让我的 CGI脚本 (script)执行起来更有效率? 
如何隐藏 Perl程式的原始码? 
如何把我的 Perl程式码编译成 byte code或 C? 
如何才能让 '#!perl'在 [MS-DOS,NT,...]下作用? 
我能利用命令列写出有用的程式吗? 
为何一行的 perl程式无法在我的 DOS/Mac/VMS系统上运作? 
我得去哪里学 Perl的 CGI或是 Web程式设计呢? 
在哪可以学到用 Perl作物件导向程式设计? 
哪里可以学到将 C与 Perl相连结? [h2xs, xsubpp] 
我已经读了 perlembed, perlguts,等等,但我仍然无法将 perl嵌入我的 
当我试着执行我的程式时,我收到某项讯息。它代表什麽意思? 
什麽是 MakeMaker? 
作者与版权事宜 

--------------------------------------------------------------------------------

篇名 
perlfaq3 -程式设计工具(原文版 Revision: 1.22, Date: 1997/04/24 22:43:42. 中译版 $Revision: 1.4 $, $Date: 1997/07/12 20:03:10 $) 


--------------------------------------------------------------------------------

概述 
这个部份回答了有关程式设计师的工具与程式设计方面的协助等相关问题。 


--------------------------------------------------------------------------------

我如何作 (任何事)? 
你到 CPAN(见 perlfaq2)找过了吗?也许别人已经写了某个模组可以解决你的 问题。你查过相关的说明文件了吗 (man pages)?以下是一份概要的索引: 

物件 (Objects)                  perlref, perlmod, perlobj, perltie
资料结构 (Data Structures)      perlref, perllol, perldsc
模组 (Modules)                  perlmod, perlmodlib, perlsub
正规表示法 (Regexps)            perlre, perlfunc, perlop
升级至 Perl5 (Moving to perl5)  perltrap, perl
与 C连结 (Linking w/C)         perlxstut, perlxs, perlcall, perlguts, perlembed
杂项 (Various)                  http://www.perl.com/CPAN/doc/FMTEYEWTK/index.html
                                        (不是说明文件,但还是很有用)

perltoc里有一份粗略的 perl 说明文件组的目录。 


--------------------------------------------------------------------------------

如何以互动的方式使用 Perl? 
典型的作法是使用 perldebug(1)说明文件里提到的 Perl 除虫器,在一个「空的」(译者:即不存在的)程式上执行,像这样: 

    perl -de 42

接下来所打入的任意合法 Perl程式码皆会立刻被评估。同时,你可以检查符号表 (symbol table)、取得堆叠的记录 (stack backtraces)、检视变数值、设定阻断点 (set breakpoints) 以及其他符号式除虫器 (symbolic debuggers) 所能作的动作。 


--------------------------------------------------------------------------------

有 Perl shell吗? 
基本上来说,没有。Shell.pm模组 (是 perl 标准套件之一)只是叫 perl 将非 Perl语言的命令当作 shell的命令来试着执行看看罢了。perl原始码套件中的 perlsh,功能简易,也很无趣,不过仍可能是你所要的。 


--------------------------------------------------------------------------------

如何替我的 Perl程式除虫? 
你用过 -w吗? 

你试过 use strict吗? 

你是否检查过每个系统呼叫 (system call)所传回的值? 

读了 perltrap说明文件吗? 

你试过 perldebug里所提到的 Perl除虫器吗? 


--------------------------------------------------------------------------------

如何检测 (profile)我的 perl程式? 
你该自 CPAN抓取 Devel::DProf 模组,并且使用 perl 标准套件所附的 Benchmark.pm。 Benchmark.pm让你测量程式码的某部份在执行上所花的时间,而 Devel::DProf则详细地替你分析哪一部份的程式用掉多少时间。 


--------------------------------------------------------------------------------

如何替我的 Perl程式作交叉参考 (cross-reference)? 
随着新发行的 alpha版 Perl编译器(它不在一般标准套件里)而来的 B::Xref模组可 以替你的 Perl程式制作 cross-reference报告。用法是: 

    perl -MO=Xref[,OPTIONS] foo.pl


--------------------------------------------------------------------------------

有 Perl专用的美化列印程式 (pretty-printer)吗? 
C有 indent(1)可以将原始码格式美化,但 Perl并没有能做得像它那麽好的东西。扫瞄器 (scanner) 和分析器 (parser) 间复杂的反馈 (feedback)(把 vgrind 和 emacs等程式搞混的就是这反馈)使得撰写一个独立的 Perl 分析器成了一项艰巨的挑战。 

当然,若你直接照 perlstyle里面的指示写程式,就根本没有必要重新安排格式。 

你所用的编辑器可以并也应能帮你把原始码的格式弄漂亮些。像 emacs的 perl-mode就能帮你把大部分 (但非全部)的程式码排列得漂亮些,而其它普通的编辑器也能提供一定程度的协助。 

如果你试着使用 vgrind程式从雷射印表机印出漂亮的原始码,可以参考: http://www.perl.com/CPAN/doc/misc/tips/working.vgrind.entry ,但是碰到复杂的程式码可能就不能全然令人满意了。 


--------------------------------------------------------------------------------

有 Perl的 ctags吗? 
有个简单的在 http://www.perl.com/CPAN/authors/id/TOMC/scripts/ptags.gz 也许符合你的需要。 


--------------------------------------------------------------------------------

哪里有 vi用的 Perl巨集? 
在 ftp://ftp.perl.com/pub/vi/toms.exrc有完整的 Tom Christiansen之 vi设定档, 它是给 vi模拟器用的标准测试档 (standard benchmark file)。它与 nvi配合得最好,巧的是,这个出自 Berkeley的编辑器也可以内嵌一个 Perl直译器 --参看 http://www.perl.com/CPAN/src/misc。 


--------------------------------------------------------------------------------

给 emacs用的 perl模式又要去哪抓呢? 
从大约 Emacs 19.22版 (version 19 patchlevel 22)起,已内含了 perl-mode.el及 perl 除虫器的支援。它们应该会和标准的 Emacs 19版一起出货。 

在 perl原始码的目录下,你会找到一个叫作 ``emacs'' 的目录,里面包括一个 cperl-mode 可以把程式中的关键字上色、提供内文相关的协助以及其它方便的功能。 

注意:``main'foo''(其中的单引号)会让 emacs的 perl-mode生病,并且会弄乱内 缩 (indentation) 与精华 (hilighting)。不过你本来就该用 ``main::foo''的 (译者按: main'foo 是表示模组或 package的旧式写法;新式的 [perl5的]写法是 main::foo)。 


--------------------------------------------------------------------------------

如何在 Perl里使用 curses? 
CPAN里的 Curses模组提供了一个通往 curses 程式库的动态载入物件模组介面。 


--------------------------------------------------------------------------------

X或 Tk如何与 Perl配合呢? 
Tk这个完全以 Perl 为基础,物件导向化的介面,让你不用学 Tcl也可以使用 Tk工具组。Sx则是 Athena Widget set专用的介面。两者都可在 CPAN取得。 


--------------------------------------------------------------------------------

如何不靠 CGI或 Tk之助作出简单的目录(选单)? 
http://www.perl.com/CPAN/authors/id/SKUNZ/perlmenu.v4.0.tar.gz 是个以 curses为基础的模组,可以达成你的要求。 


--------------------------------------------------------------------------------

我可以动态地将 C常式载入 Perl吗? 
若你的系统架构有支援的话,标准 perl 套件便应该有此功能(介由 DynaLoader 这个模组)。详情请参看 perlxstut 。 


--------------------------------------------------------------------------------

什麽是 undump? 
看下个问题。 


---------------------------------------------
perl常问问题集--第三篇perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇
处理 SSI 文件时出错
  • 上一篇文章:

  • 下一篇文章:
  • 进入论坛讨论

    相关文章
    Visual Basic环境下Video/ Audio压缩数据流播放技术
    VB程序中处理随机事件
    VB编程的必备技巧
    让VB应用程序支持鼠标滚轮
    VB中Winsock控制的UDP协议的使用
    VB7新特性预览
    Visual Basic的未来预告
    [修正] 你想使MSFLEXGRID控件可编辑吗?
    制作半透明窗体
    AnimateWindow API
    从程序中生成Exe文件
    雨滴式的显示图片
    热门文章最新推荐

    版权与免责声明:
    ① 本网转载其他媒体稿件是为传播更多的信息,此类稿件不代表本网观点,版权归原作者所有,本网不承担此类稿件侵权行为的连带责任。
    ② 本站原创文章,转载时请注明出自文谷及作者姓名
    ③在本网BBS上发表言论者,文责自负。
    ④如您因版权等问题需要与本网联络,请在30日内联系 。
    perl常问问题集--第三篇perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇
    perl常问问题集--第三篇perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇2006-3-27 17:25:05perl常问问题集--第三篇

    全站热点
    最新推荐
    处理 SSI 文件时出错
    处理 SSI 文件时出错