1
2
为什么不为第一个(使用过的)文件创建一个哈希呢?
|
2
3
它从来没有成功的机会,因为
在第一次不匹配时,sub返回其调用者。你的意思可能是
请注意,您的算法具有二次复杂度,对于较大的输入速度会很慢。最好将使用过的记录读入一个散列,然后对每一行
$ ./prog.pl 2305 200 2 S SISKIYOU GREENVIEW CA 41.52 -122.9 2 INCH HAIL REPORTED WITH STORM JUST SOUTH OF GREENVIEW. (MFR) 2350 200 DANIELS E FLAXVILLE MT 48.8 -105.17 GOLF BALL TO HEN EGG SIZED HAIL (GGW) 2350 175 5 N DANIELS RICHLAND MT 48.89 -106.05 DESTROYED CROPS (GGW)
正如你所看到的,它仍然有一个bug。你需要倒带
这就产生了 $ ./prog.pl 2350 200 DANIELS E FLAXVILLE MT 48.8 -105.17 GOLF BALL TO HEN EGG SIZED HAIL (GGW) 2350 175 5 N DANIELS RICHLAND MT 48.89 -106.05 DESTROYED CROPS (GGW) 举一个更好的方法的例子,考虑
美元/prog.pl 2350 200丹尼尔E弗拉克斯维尔山脉48.8-105.17高尔夫球到鸡蛋大小的冰雹(GGW) 2350 175 5 N DANIELS RICHLAND MT 48.89-106.05毁坏的作物(GGW) |
3
1
在内部循环中使用$可能会导致问题。试着先给你的台词命名如下:
perl对数值比较和字符串比较的看法也不同。您使用的是字符串比较而不是数字比较:
更改为:
|
4
1
自
看起来你的逻辑也有点颠倒了——首先
|
7BeholdeR7 · 文件夹的重量超过其中的文件(六倍) 2 年前 |
ilteris · 为什么程序在fscanf后崩溃 2 年前 |
Peaceful · 使用fscanf读取C中具有未知行数的文件 2 年前 |
NOCi · 如何将Tensorflow的结果记录到CSV文件 2 年前 |
Oakzeh · 如何在字符串索引之前读取文件并删除字符 2 年前 |