用hash存数组|得地址|取地址
#!/usr/bin/perl -w
use strict; my %hash = %{&collect};my $arr_ad=$hash{'a'};print "$arr_ad\n";
print"$arr_ad->[1]\n";
print "$arr_ad->[1][3]\n"; sub collect
{
my @col;
while(<>)
{
my @split = split //;push @col,[@split];
}
my %hash;my $key= 'a';$hash{$key} = \@col;print "$hash{$key}\n"; return \%hash
} # cat input
# abcdefg
# 1234567
# ABCDEFG
#
# cat input |perl t
# ARRAY(0x9f52f8)
# ARRAY(0x9f52f8)
# ARRAY(0x9f4b78)
# 4
#
key:
hash的标准形式是:$hash{$key}=value;
取地址:$hash_ad = \%hash;
解地址:
整个hash:%new_hash = %{$hash_ad};变量形式相对应;
单个hash元素:$single = $hash_ad->{$key};这是由$hash{$key}转变而来;
array:同理
取地址:$arr_ad = \@arr;
解地址:
整个arr:@new_arr = @{$arr_ad};变量形式相对应;
单个hash元素:$single = $arr_ad->[1];这是由$arr[1]转变而来;
用hash存数组|得地址|取地址的更多相关文章
- C-基础:数组名与取地址符&
指出下面代码的输出,并解释为什么.(不错,对地址掌握的深入挖潜) main() { ]={,,,,}; ); printf(),*(ptr-)); } 输出:2,5 *(a+1)就是a[1], ...
- C语言的数组名和对数组名取地址
http://blog.csdn.net/zdcsky123/article/details/6517811 相信不少的C语言初学者都知道,数组名相当于指针,指向数组的首地址,而函数名相当于函数指针, ...
- C语言数组和指针的理解_在取地址运算上的操作_指针加减操作_a 和&a 的区别
1.一个实例+理论分析 在了解数组和指针的访问方式前提下,下面再看这个例子: main() { int a[5]={1,2,3,4,5}; int *ptr=(int *)(&a+1); pr ...
- C语言对数组取地址
#include <stdio.h> main() { ] = {,,,,}; printf("a=%p\n" , a); printf("a=%p\n&qu ...
- C语言 对数组名取地址
作者 : 卿笃军 你有没有想过,对一个一维数组名取地址,然后用这个地址进行加减运算.这会出现什么样的结果呢? 演示样例: int a[5] = {1,2,3,4,5}; int *p = (int * ...
- 数组名取地址所算数运算应注意的"trap"
数组名取地址所算数运算应注意的"trap" 直接看代码: #include <stdio.h> int main() { int array[5]; printf(&q ...
- C语言——数组名、取数组首地址的区别(一)
目录: 1. 开篇 2. 论数组名array.&array的区别 3. array.&array的区别表现在什么地方 4. 讨论 5. 参考 1.开篇 很多博客和贴吧都有讨论这个话题, ...
- C语言中对数组名取地址
在C/C++中,数组名相当于一个指针,指向数组的首地址.这里“相当于”不代表等于,数组名和指针还是有很多区别的,这个在<C陷阱与缺陷>里有详尽的讲述.而这里要说的是对于数组名取地址的这么一 ...
- 对数组名取地址 a[ ],&a
C语言规定,数组名代表数组的首地址,也就是第0号元素的地址.所以a==&a[0] 但对数组名取地址时却要注意了,在理解“对数组名取地址”这一表达式的含义时一定要记住:数组名是“数组”这种变量的 ...
随机推荐
- vue知识点散记
1.iphone5微信浏览器里的methods里貌似不兼容 test(){} 写法,只支持test:function(){} 2.v-cloak 防止双括号的闪烁 <div id=" ...
- ETL工具对比
ETL工具对比 Informatica Kettle 起源 1993年创立于 (美国加利福尼亚州)并于1999年4月在纳斯达克上市 2006年加入了开源BI组织 自2017年9月起,已被(日立集团下 ...
- id就是方法名,如何调用;批量input怎么获取他们的key值作为参数
1.很多Dom的时候,一个个写会比较麻烦,我用ID记载他的方法名: 2.很多input,在数据交互的时候一个个获取会比较繁琐,给一个方法,批量获取. <div id="searchSt ...
- c++ 模板联系4
//定义类成员函数特化类型 #include "stdafx.h" #include <iostream> using namespace std; typedef f ...
- LVS DR模式搭建、keepalived+LVS搭建介绍
参考文献 http://blog.51cto.com/taoxie/2066993 疑问: 1.为什么要修改RealServer的返回arp响应和发送arp请求参数 echo "1&quo ...
- 实验吧web-易-what a fuck!这是什么鬼东西?
打开链接是一大串符号,是js编码的一种,全部复制下来,粘贴在控制台中回车就拿到flag了.
- Centos7下yum安装软件报错解决办法
Traceback (most recent call last): File "/usr/bin/yum", line 29, in yummain.user_main(sys. ...
- UML-GoF设计模式
我认为,本章是重点中的重点.并非23个模式都被广泛应用,其中常用和最为有效的大概有15个模式. 1.适配器(Adapter) 1).使用场景 使用一个已经存在的类,但如果他的接口,也就是他的方法和你的 ...
- Java中常用的API(三)——缓冲区字符串
前两节中分别介绍了Object和String,这一节主要介绍StringBuffer和StringBuilder. StringBuffer 由于String是不可变的,所以导致String对象泛滥, ...
- atan2&sin
//弧度转化角度:弧度*180/PI //角度转化弧度:角度*PI/180 #include <math.h> #include <stdio.h> const double ...