这段代码在Perl:keys(%$hash)中做什么。。。?

这段代码在Perl:keys(%$hash)中做什么。。。?,perl,Perl,由于Google忽略特殊字符,我无法找到%$hash的作用以及如何支持它工作您发布的代码毫无意义,但它应该做的是取消对hash引用的引用,前提是您在标量$hash中存储了一个有效的hash引用,而您没有 例如: print "Enter the hash \n"; $hash=<STDIN>;chop($hash); @keys = keys (%$hash); @values = values (%$hash); 该函数将返回一个由散列的所有键组成的列表 返回的值是散列中原始键的

由于Google忽略特殊字符,我无法找到%$hash的作用以及如何支持它工作

您发布的代码毫无意义,但它应该做的是取消对hash引用的引用,前提是您在标量$hash中存储了一个有效的hash引用,而您没有

例如:

print "Enter the hash \n";
$hash=<STDIN>;chop($hash);
@keys = keys (%$hash);
@values = values (%$hash);
该函数将返回一个由散列的所有键组成的列表

返回的值是散列中原始键的副本,因此 修改它们不会影响原始哈希

该函数执行完全相同的操作,除了哈希值

只要给定的散列未被修改,您就可以依赖于键、值和 每个人重复返回彼此相同的顺序


有关引用的更多帮助,请参阅,如果您有冒险精神,请参阅。

您发布的代码毫无意义,但它应该做的是取消对哈希引用的引用,前提是您在scalar$hash中存储了一个有效的哈希引用,而您没有

例如:

print "Enter the hash \n";
$hash=<STDIN>;chop($hash);
@keys = keys (%$hash);
@values = values (%$hash);
该函数将返回一个由散列的所有键组成的列表

返回的值是散列中原始键的副本,因此 修改它们不会影响原始哈希

该函数执行完全相同的操作,除了哈希值

只要给定的散列未被修改,您就可以依赖于键、值和 每个人重复返回彼此相同的顺序

有关引用的更多帮助,请参阅,如果您喜欢冒险,请参阅。

键返回指定哈希的键。在您编写的代码中,通过STDIN指定要查看和提取的键和值的哈希的名称,这是一种非常奇怪的行为。

键返回指定哈希的键。在您编写的代码中,要查看并提取其键和值的哈希的名称是通过STDIN指定的,这是非常奇怪的行为。

keys%$hash返回由$hash中的值引用的哈希的键。散列是一种关联数组,它或多或少意味着一个数组由称为键的字符串而不是数字索引

在这种情况下,$hash包含一个字符串。当使用字符串作为引用时,取消对它的引用将访问名称与该字符串匹配的包变量

如果完整的程序是

use strict;
use warnings;
use Data::Dump;

my $href = {
    foo => 'bar',
    bat => 'baz',
};

dd(keys(%$href));    # ("bat", "foo")
dd(values(%$href));  # ("baz", "bar")
keys%$hash返回由$hash中的值引用的哈希的键。散列是一种关联数组,它或多或少意味着一个数组由称为键的字符串而不是数字索引

在这种情况下,$hash包含一个字符串。当使用字符串作为引用时,取消对它的引用将访问名称与该字符串匹配的包变量

如果完整的程序是

use strict;
use warnings;
use Data::Dump;

my $href = {
    foo => 'bar',
    bat => 'baz',
};

dd(keys(%$href));    # ("bat", "foo")
dd(values(%$href));  # ("baz", "bar")

你有好的Perl入门吗?它可能失败得很惨,因为没有将$hash从字符串转换为hash引用;忽略实际代码并关注标题,首先,%$hash取消对哈希引用$hash的引用。键然后在哈希上迭代并返回其所有键的列表。看,你有一个好的Perl入门吗?它可能失败得很惨,因为没有将$hash从字符串转换为hash引用;忽略实际代码并关注标题,首先,%$hash取消对哈希引用$hash的引用。键然后在哈希上迭代并返回其所有键的列表。请看,您应该添加一个关于keys@stevieb你能说得更具体些吗?有很多关于钥匙的注释我可以补充-OP特别询问了键%$hash的作用。你得到了deref部分,但是没有在你的回答中包括对键函数的解释啊,我明白你的意思了。当我看到键和值都试图取消引用非引用的内容时,我认为绊脚石是引用,而不是键keys@stevieb你能说得更具体些吗?有很多关于钥匙的注释我可以补充-OP特别询问了键%$hash的作用。你得到了deref部分,但是没有在你的回答中包括对键函数的解释啊,我明白你的意思了。当我看到键和值都试图去引用非引用的东西时,我认为绊脚石是引用,而不是键。