标题: [问题求助] [已解决]请问gawk中,split函数显示的为何是乱序? [打印本页]
作者: FOR 时间: 2011-10-1 05:15 标题: [已解决]请问gawk中,split函数显示的为何是乱序?
本帖最后由 FOR 于 2011-10-4 12:38 编辑
请问gawk中,split函数显示的为何是乱序- BEGIN {
- var="111#222#333#444#555#666#777#888#999"
- split(var,sss,"#")
- for (ddd in sss) {print ddd,sss[ddd]}
- }
复制代码
显示如下
4 444
5 555
6 666
7 777
8 888
9 999
1 111
2 222
3 333
为何不是从1-9显示,而是4-9再是1-3,有什么规律?
作者: FOR 时间: 2011-10-1 07:18
知道鸟- BEGIN {
- var="111#222#333#444#555#666#777#888#999"
- for (ddd=1;ddd<=split(var,sss,"#");ddd++)
- print ddd,sss[ddd]
- }
复制代码
作者: awk 时间: 2011-10-1 12:39
不是split函数的问题。
那是hash数组,使用使用for(x in y)的方式访问数组时,是无序的。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |