- 浏览: 582438 次
- 性别:
- 来自: 深圳
-
文章分类
- 全部博客 (200)
- html css (6)
- javascript (11)
- php (6)
- java基础 (18)
- mysql (8)
- ssh (7)
- linux (21)
- 杂想 (1)
- 搜索引擎 (2)
- linux-shell (2)
- perl (61)
- 单元测试 (1)
- jquery (1)
- xml (1)
- 求职招聘 (1)
- 其他 (2)
- 项目工具 (2)
- maven (10)
- ant (1)
- eclipse (3)
- windows (4)
- java (8)
- jsp (1)
- c c++ (7)
- java-web (3)
- 汇编 (1)
- 正则表达式 (2)
- 网络 (1)
- 路由 (1)
- ip (1)
- 测试驱动开发 (1)
- tdd (1)
- vim (1)
- powermock (1)
- junit (1)
- spring (1)
- spring security (1)
- httpclient (1)
- sql (1)
- sqlserver (2)
- 存储过程 (1)
- apache (1)
- Nexus (1)
- 金融 (1)
- clojure (4)
- 函数式编程 (3)
- 工作 (1)
- git (2)
- java 并发 (1)
- python (1)
- java netty proxy (1)
- scala (1)
最新评论
-
springmvc-freemarker:
可以参考最新的文档:如何在eclipse jee中检出项目并转 ...
eclipse 配置maven web项目 -
zk1878:
huzhenyu 写道楼主很用心,讲得十分清楚,非常实用!呵呵 ...
eclipse 配置maven web项目 -
huzhenyu:
楼主很用心,讲得十分清楚,非常实用!
eclipse 配置maven web项目 -
宋建勇:
不错,对CountDownLatch了解加深了!
java 多线程 CountDownLatch用法 -
zk1878:
必须的。。。。
perl下载图片
一、声明,调用
perl的引用,相当于c中的指针,有以下几种类型
1、一般的声明方式
$scalarref = \$foo; #标量引用 SCALAR , $foo='hello';
$constref = \186_282.42;#标量引用 SCALAR
$arrayref = \@arr; #数组引用 ARRAY , @arr=1..100;
$hashref = \%hash; #hash引用 HASH,%hash=('a'=>1,'b'=>2);
$coderef = \&add; #子过程引用 CODE,sub add{($a,$b)=@_; return $a+$b;}
$globref = \*STDOUT; #GLOB句柄引用
使用方式(以下的数组下标,键值假设都存在):
$$scalarref ;
$$constref ;
$$arrayref [0] ; 或 $arrayref ->[0];
$$hashref{'a'}; 或 $hashref->{'a'};
&$coderef(1,2) ; 或 $coderef->(1,2);
2、匿名的方式
另外声明方式采用匿名方式声明 如下(针对数组,hash,子过程)
$arrRef=[1,2,3,4,5]; #指向匿名数组的引用
$hashRef={'a'=>1,'b'=>2}; #指向匿名hash的引用
$subRef=sub{return 1;}; #指向匿名子过程的引用
使用方式是一样的
3、符号表引用的声明方式
$scalarref = *foo{SCALAR}; # 和 \$foo 一样
$arrayref = *ARGV{ARRAY}; # 和 \@ARGV 一样
$hashref = *ENV{HASH}; # 和 \%ENV 一样
$coderef = *handler{CODE}; # 和 \&handler 一样
$globref = *foo{GLOB}; # 和 \*foo 一样
$ioref = *STDIN{IO}; # ?...
二、解引用
声明一个引用一般是在变量名前加个'\',而解引用是在变量名前加'$',真是有趣
如:
$s='hello';
$sRef=\$s;
print $$sRef; #输出 hello
理解了这点,看下面的
$refrefref = \\\"howdy";
print $$$$refrefref; #输出 howdy
发表评论
-
perl http模块总结
2013-04-04 23:51 5802perl发送http请求主要有 LWP,UserAgent ... -
perl json
2013-04-03 20:51 4131http://search.cpan.org/~makam ... -
perl xml json
2012-09-14 19:52 1309use XML::XML2JSON; ... -
perl源文件编码类型导致乱码问题
2012-09-11 09:28 2334$str = '中国'; chdir 'E:\jo ... -
perl 解析html, 自己写的几个比较常用方法
2012-09-04 20:56 7218perl解析html, 比较常用的模块是 HTML::Tree ... -
perl多进程示例
2012-08-17 15:33 1958以下例子,在主进程生成3个子进程,然后再收割每个子进程,防 ... -
一段实用的perl脚本
2012-08-15 20:53 2380下面的脚本实现了在命令行直接执行perl语句或是执行 ... -
perl发送http请求,easy之极
2012-08-09 23:21 16001perl 发送http 非常之简单,发送get请求 只一 ... -
perl 操作mysql
2012-04-27 07:57 1189use DBI; @driver_names = ... -
Perl 中的线程
2012-03-31 22:19 1487原文:http://www.ibm.com/developer ... -
perl smtp 发送邮件
2012-03-20 23:44 4997原文:http://blog.chinaunix.net/ui ... -
perl开启并关闭w32进程
2012-03-05 16:31 1990perl是个很强大的脚本语言,cpan包罗万象的 ... -
perl发送http请求
2012-02-16 17:51 5226下面是一段perl发送http请求的代码,设置了请求头,表单参 ... -
perl对windows的进程的一些常用操作
2012-02-16 17:52 20741、获取所有正在运行的进程,用到了cpan的Win32::Pr ... -
perl查看已经安装的模块
2012-02-16 17:53 1424use ExtUtils::Installed; my ... -
在Perl调用C/C++代码/动态链接库
2012-02-10 17:46 6427原文http://manew.org/?p=62 perl想 ... -
perl 剪贴板操作
2012-02-09 14:05 1669以下代码设置剪贴板内容为 hello world,然后读取剪贴 ... -
perl 文件目录的创建删除拷贝
2012-01-11 18:03 5298以下三个是核心包提供的 1 unlink @files ... -
perl正则表达式中该注意的一个问题
2011-12-29 00:06 1226请看以下例子 代码1 $a='abc123EEE11 ... -
perl 目录遍历
2011-12-16 10:27 2408使用perl的 File::Find模块,目录遍历将会很简单, ...
相关推荐
例如,在示例中,`mytest.xs`文件在末尾增加了对`hello`函数的Perl接口声明,即`void hello() CODE: { hello(); }`,这样Perl程序就可以通过这个接口来调用C库中的`hello`函数。 #### 4. 修改Makefile.PL以包含C库 ...
- **语句**:Perl中的语句是构成程序的基本单位,如变量赋值、函数调用等。 - **结构**:Perl支持各种控制结构,如`if`、`for`、`while`等循环和条件判断语句。 #### 注释 - 单行注释使用`#`符号,例如:`# 这是一...
Perl 中有两种主要的字符串引用方式:双引号和单引号。此外,还支持多行字符串(heredocs)。 #### 包、模块、记录和对象 Perl 支持面向对象编程,并通过包和模块来组织代码。 以上是对《Perl 5 指南:为 C/C++、...
1. Perl基础语法:包括变量声明、数据类型、控制结构(如循环和条件语句)以及子程序(函数)的定义和调用。 2. 正则表达式:Perl与正则表达式有着深厚的关系,正则表达式在Perl中被广泛用于文本处理和模式匹配。 ...
2. **数据类型**:Perl支持多种数据类型,如标量(字符串、数字)、数组、哈希(关联数组)、引用以及复合数据类型。这些数据类型的灵活使用是Perl强大功能的关键。 3. **变量**:Perl中的变量以符号“$”、“@”或...
当对象不再被引用时,Perl会自动调用析构函数来清理资源。可以定义一个名为`DESTROY`的方法作为析构函数。 9. **继承(Inheritance)**: Perl的继承机制与其他面向对象语言有所不同,它只继承方法,不直接处理数据...
14. **perlref** 和 **perlsub**:涉及引用和子程序(子例程)的使用,包括匿名函数、引用和闭包。 通过学习这份手册,无论是初学者还是经验丰富的Perl开发者,都能获得对Perl语言的全面理解,并提升解决问题的能力...
2. **Perl语法基础**:包括变量声明、数据类型(标量、数组、哈希等)、控制结构(if-else、for、while循环)和流程控制。 3. **字符串和正则表达式**:讲解字符串操作函数和强大的正则表达式匹配功能,这是Perl...
- **引用和引用操作**:引用是指向数据结构的指针,Perl中的引用支持更高级的数据结构设计。 #### 3. 文件和输入/输出处理 - **文件操作**:Perl提供了丰富的文件读写功能,如open/close/read/write等命令。 - **...
- 变量不需要预先声明,但使用`strict`模式时需要先声明。 3. **字符串和数值操作** - Perl支持字符串和数值运算,如连接字符串、比较数值、算术运算等。 - `print`函数用于输出,例如`print "Hello, World!\n";...
在"Perl参考大全"中,读者可以期待找到关于变量声明、流程控制(如if-else、for、while循环)、函数定义和调用、异常处理等内容的详细讲解。书中还可能涵盖Perl中的引用和指针,这是理解和创建复杂数据结构,如链表...
学习Perl时,掌握基本语法是第一步,如变量声明、条件语句(if/else)、循环(while、for)、函数定义和调用等。然后深入理解引用类型(如数组引用、哈希引用)以及如何使用模块(如CPAN上的各种工具和库)将有助于...
5. **符号引用**:Perl允许对变量、数组、哈希等进行符号引用,这在处理复杂数据结构或动态编程时非常有用。 6. **并发编程**:Perl支持线程(threads)和进程(fork)实现并发,可以使用`threads`模块创建线程,`...
#### 十三、Perl5中的引用(指针) **内容解析:** - **引用简介** - 引用是Perl中指向值的变量。 - **使用引用** - 使用`$ref`访问引用。 - **使用反斜线(\)操作符** - 创建引用。 - **引用和数组** - 数组的...
- 在Perl中,变量不需要预先声明,但推荐使用`my`、`our`或`local`关键字来定义变量的作用域。`my`用于局部变量,`our`用于共享同一作用域内的全局变量,`local`则用于临时改变全局变量的值。 2. **字符串与数字...
函数的定义与调用也是基础内容,读者将学习如何创建和使用自定义函数,以及内置的Perl函数。 进入"高级特性",教程将涵盖更复杂的Perl技术。这可能包括引用,用于创建多维数组和复杂的数据结构,以及对象导向编程。...
此外,面向对象编程在Perl中也是可行的,尽管它的实现方式与许多其他语言不同。通过`package`定义类,`new`构造对象,以及`->`操作符调用方法,你可以构建自己的对象系统。源码可能包含了简单的类定义和对象交互的...