例子:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <EXTERN.h> /* from the Perl distribution */
#include <perl.h>/* from the Perl distribution */
static PerlInterpreter *my_perl /***The Perl interpreter***/
int main(int argc, char **argv, char **env)
{
PERL_SYS_INIT3(&argc,&argv,&env)
my_perl = perl_alloc()
perl_construct(my_perl)
PL_exit_flags |= PERL_EXIT_DESTRUCT_END
perl_parse(my_perl, NULL, argc, argv, (char **)NULL)
perl_run(my_perl)
perl_destruct(my_perl)
perl_free(my_perl)
PERL_SYS_TERM()
}
perl 的图形有两种玩法, Tk 和 Tkx. Tk 是纯 Perl 的, 但能用的 widget (即那些 button, menu, scrollbar... )比较少Tkx 则需要你先装有 Tcl/Tk , 但能用的 widget 比较多. 一个最简单的例子就是use Tk# 导入 tk 模组
use strict
my $mw = MainWindow->new# 创建窗口
my $labelObj = $mw->Label(-text =>'Hello, world!')# 创建一个 label 物件
$labelObj ->pack# pack() 是将物件程现的方法, 你再翻翻书, 还有 grid() 和 place() 的风格
$mw->Button(
-text=>'Quit',
-command =>sub { exit },
)->pack
MainLoop# 每个 tk 程序都要等到呼叫 MainLoop 才会出现.
最後, 你还得知道一个(差不多)每个物件都会的方法, 叫 configure, 你会以此对物件进行重新定义, 或附加设定
perldoc -u -f atan2是perldoc 命令行 ,可以得到 perl 中atan2 函数的说明
system 是在perl 中调用这个命令行,反引号也可以实现同样的功能
然后把得到的内容放到数组
然后 正则替换内容, \w 代表一个数字、字母或下划线
匹配 以一个\w 开头,被<>括起来的内容 ,后面的 $1 代表的是前面括号括起来的内容,\U 代表大写,g代表 全部替换;
就是 像 X<atan2>会被替换为 ATAN2
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)