HTML Tutorials |
|
XML Tutorials |
|
Browser Scripting |
|
Server Scripting |
|
.NET (dotnet) |
|
Multimedia |
|
Web Building |
|
Java Tutorials |
|
Programming Langauges |
|
Soft Skills |
|
Database Tutorials |
|
Operating System |
|
Software Testing |
|
SAP Module |
|
Networking Programming |
|
Microsoft Office |
|
Accounting |
|
|
Sous-programmes dans le Perl
|
Tous programmes de Perl que nous avons écrits jusqu'ici ont simplement un ensemble d'instructions, ligne par la ligne. Comme n'importe quelle autre langue, le Perl nous permettent d'écrire le code sous la forme modulaire. Faire ainsi la langue devrait permettre au programmeur de mettre de côté des sous-programmes de code de sorte qu'ils puissent être réutilisés. Le Perl également fournissent ce dispositif.
|
Noter ici que beaucoup de gens appellent des sous-programmes de Perl en tant que « fonctions ». Dans cette section que nous préférons employer le terme « fonctionne » pour ces sous-programmes qui sont établis dans le Perl, et « sous-programmes » pour ceux le code qui sont écrits par le programmeur de Perl.
|
Noter ici qu'un utilisateur que des sous-programmes peuvent lui être employés là où est valide en utilisant une fonction indigène de Perl.
|
Définir un sous-programme
|
Nous ne voulons pas que notre nouveau sous-programme imprime le message. Au lieu de cela, nous voulons qu'il renvoie la corde du message, et plus tard nous appelons la copie là-dessus.
|
use strict;
sub HelloEveryone {
return "Hello everyone.\nWhere do you want to go with Perl today?\n";
}
print &HelloEveryone;
|
|
Employer des arguments dans les sous-programmes
|
Si vous ne pouvez pas donner l'entrée au sous-programme puis que le subrioutine n'est pas utile beaucoup bon. Par conséquent le Perl nous permet de passer des arguments aux sous-programmes juste comme des fonctions indigènes de Perl.
|
Le Perl place une variable de rangée spéciale « @_ » au début de chaque sous-programme, pour être la liste d'arguments envoyés au sous-programme. Par une certaine convention standard, nous pouvons accéder à ces variables en utilisant $_ [0. $#_]. Cependant, il vaut mieux de déclarer une liste de variables et de leur assigner @ _ à la place immédiatement. Considérons par exemple, si nous voulons saluer le groupe de personnes particulier, nous peut faire ce qui suit :
|
use strict;
sub HelloEveryone {
my($name1, $name2) = @_;
return "Hello $name1 and $name2.\n" .
"Where do you want to go with Perl today?\n";
}
print &HelloEveryone("John", "David");
|
|
Noter ici que puisque nous sommes dans un nouveau bloc et avons employé le mon, les variables que nous avons déclarées vivront tant que le sous-programme obtient exécuté.
|
Ce sous-programme laisse un peu qui est désiré. Il serait bon si nous avons une salutation faite sur commande, au lieu de « bonjour ». En outre, nous voulons également saluer autant de personnes pendant que nous voulons à, et pas simplement deux. Ce code fixe ces deux problèmes :
|
use strict;
sub HelloEveryone {
my($greeting, @names) = @_;
my $returnString;
foreach my $name (@names) {
$returnString .= "$greeting, $name!\n";
}
return $returnString .
"Hey here's VYOM technosoft?\n";
}
print &HowdyEveryone("Hello", "John", "David", "Peter", "George", "Michal");
|
|
Dans cet exemple nous avons employé deux techniques intéressantes. Premièrement, nous employons une liste comme dernier paramètre quand nous acceptons des arguments. Il signifie que tout sera mis dans des @names après le premier argument. Noter ici que toutes les autres variables qui ont suivi des @names, seraient demeurées non définies. Cependant, les variables scalaires avant la rangée (comme $greeting) reçoivent des valeurs hors du @_. Ainsi, il est dans de bons habitudes de faire seulement à rangée le dernier argument.
|
|
|
Keywords:perl tutorial, perl scripts, perl programming, active perl, perl download,
blackberry perl, perl regular expressions, perl split, perl array, perl script page
|
|
HTML Quizes |
|
XML Quizes |
|
Browser Scripting Quizes |
|
Server Scripting Quizes |
|
.NET (dotnet) Quizes |
|
Multimedia Quizes |
|
Web Building Quizes |
|
Java Quizes |
|
Programming Langauges Quizes |
|
Soft Skills Quizes |
|
Database Quizes |
|
Operating System Quizes |
|
Software Testing Quizes |
|
SAP Module Quizes |
|
Networking Programming Quizes |
|
Microsoft Office Quizes |
|
Accounting Quizes |
|
|