使用或不使用双引号时打印数组变量

Nan*_* HE 2 printing arrays perl double-quotes

当我学习打印数组变量时,我发现在使用双引号时插入了空格.代码段如下.你能告诉我为什么吗?

#!/usr/bin/perl -w
use strict;
use warnings;

my @str_array = ("Perl","array","tutorial");
my @int_array = (5,7,9,10);

print @str_array;
print "\n";
# added the double quotes
print "@str_array";
print "\n";
print @int_array;
print "\n";
# added the double quotes
print "@int_array";
Run Code Online (Sandbox Code Playgroud)

输出:

Perlarraytutorial
Perl array tutorial
57910
5 7 9 10
Run Code Online (Sandbox Code Playgroud)

Ben*_*son 5

在字符串中使用变量时,使用字符串插值.字符串插值意味着,变量被格式化为字符串.当数组变量被格式化为字符串时,它们在元素之间给出空格.这些空格实际上由变量$"确定.此变量的默认值是空格.有关更多信息,请参阅特殊变量perl文档.