Perl 教程 之 Perl 子程序(函数) 6

简介: 子程序的私有变量

Perl 教程 之 Perl 子程序(函数) 6

Perl 子程序(函数)

Perl 子程序也就是用户定义的函数。

Perl 子程序即执行一个特殊任务的一段分离的代码,它可以使减少重复代码且使程序易读。

子程序的私有变量

默认情况下,Perl 中所有的变量都是全局变量,这就是说变量在程序的任何地方都可以调用。

如果我们需要设置私有变量,可以使用 my 操作符来设置。

my 操作符用于创建词法作用域变量,通过 my 创建的变量,存活于声明开始的地方,直到闭合作用域的结尾。

闭合作用域指的可以是一对花括号中的区域,可以是一个文件,也可以是一个 if, while, for, foreach, eval字符串。

以下实例演示了如何声明一个或多个私有变量:

sub somefunc {
my $variable; # $variable 在方法 somefunc() 外不可见
my ($another, @an_array, %a_hash); # 同时声明多个变量
}
实例

!/usr/bin/perl

全局变量

$string = "Hello, World!";

函数定义

sub PrintHello{

PrintHello 函数的私有变量

my $string;
$string = "Hello, baidu!";
print "函数内字符串:$string\n";
}

调用函数

PrintHello();
print "函数外字符串:$string\n";
以上程序执行输出结果为:

函数内字符串:Hello, baidu!
函数外字符串:Hello, World!

目录
相关文章
|
9月前
|
机器学习/深度学习 人工智能 测试技术
昆仑万维开源 Skywork R1V:开源多模态推理核弹!视觉链式分析超越人类专家
Skywork R1V 是昆仑万维开源的多模态思维链推理模型,具备强大的视觉链式推理能力,能够在多个权威基准测试中取得领先成绩,推动多模态推理模型的发展。
271 4
昆仑万维开源 Skywork R1V:开源多模态推理核弹!视觉链式分析超越人类专家
|
传感器 人工智能 算法
镭神智能荣获全国首批人工智能4A级企业认定
镭神智能作为全球领先的全场景激光雷达及整体解决方案提供商,自成立以来,凭借雄厚实力和优秀成果
|
敏捷开发 安全 测试技术
阿里云云效产品使用合集之如何在甘特图视图中看到负责人信息
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
数据采集 文字识别 数据安全/隐私保护
轻松抓取:用 requests 库处理企业招聘信息中的联系方式
本文详细介绍如何利用Python的`requests`库结合代理IP技术,突破Boss直聘的登录验证与反爬虫机制,抓取企业招聘信息中的联系方式。文章首先阐述了Boss直聘数据抓取面临的挑战,随后介绍了代理IP轮换、登录会话保持及请求头伪装等关键技术。通过一个完整的示例代码,展示了从配置代理、模拟登录到解析HTML获取联系方式的具体步骤。此方法不仅适用于Boss直聘,还可扩展至其他需登录权限的网站抓取任务。
1407 0
轻松抓取:用 requests 库处理企业招聘信息中的联系方式
|
缓存 测试技术 Apache
ab 压测工具:评估你的服务器性能
ApacheBench (AB) 是一款用于 HTTP 性能测试的轻量级工具,可模拟多用户并发访问,评估应用在高负载下的表现。通过命令行参数 `-n` 和 `-c` 分别设置总请求数和并发数,例如 `ab -n 100 -c 2 http://larablog.test/`。
584 1
|
运维 关系型数据库 分布式数据库
PolarDB产品使用问题之归档方式有什么区别
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
163 0
|
传感器 物联网 智能硬件
连接家居的未来:物联网在智能家居中的革命性应用
随着物联网技术的迅猛发展,智能家居正成为我们生活中不可忽视的一部分。本文将探讨物联网在智能家居领域的创新和应用,包括智能设备的互联互通、家庭自动化、能源管理等方面的进展,以及其对我们日常生活的影响与未来发展的前景。
774 0
|
关系型数据库 分布式数据库 数据库
07MyCat - 概念 - 逻辑表
07MyCat - 概念 - 逻辑表
109 0
|
机器学习/深度学习 数据采集 算法
阿里云大数据ACP(四)机器学习 PAI 2
阿里云大数据ACP(四)机器学习 PAI 2
243 0
阿里云大数据ACP(四)机器学习 PAI 2