+ -
当前位置:首页 → 问答吧 → perl read 函数的第四个参数具体指什么啊?

perl read 函数的第四个参数具体指什么啊?

时间:2011-01-17

来源:互联网

本帖最后由 zzy7186 于 2011-01-17 20:05 编辑

read (FILEHANBD, $var, $length, $offset)read 函数有四个参数
前三个知道意思
第四个参数不太明白是干嘛使得? 正数与负数有什么区别?

作者: zzy7186   发布时间: 2011-01-17

看不懂文档就自己做下实验

文件 t

QUOTE:
1234

  1. open FH, 't';
  2. my $a = '123';
  3. read FH, $a, 2, 1;
  4. print $a
复制代码

作者: zhlong8   发布时间: 2011-01-17

回复 zhlong8


加不加第四个参数第四个参数结果是一样的?

#!/usr/bin/perl
open FH,"<test";
read(FH, $a, 2,2);
print $a,"\n";


[root@PC_IN_LAN learnperl]#./a
12


#!/usr/bin/perl
open FH,"<test";
read(FH, $a, 2);
print $a,"\n";

[root@PC_IN_LAN learnperl]#./a
12

作者: zzy7186   发布时间: 2011-01-17

你没看看 $a 中如果原先有内容呢?

作者: zhlong8   发布时间: 2011-01-17

回复 zhlong8


    我把$a 改成其他的变量结果还是一样。。。应该不是$a中原来有值的问题吧

作者: zzy7186   发布时间: 2011-01-17



QUOTE:
回复  zhlong8


    我把$a 改成其他的变量结果还是一样。。。应该不是$a中原来有值的问题吧
zzy7186 发表于 2011-01-17 20:55




    都到这份上了你还没明白那个参数为什么叫 offset ……

作者: zhlong8   发布时间: 2011-01-17

回复 zhlong8


    我对offset的理解是没有时从第一个开始读,有offset时从offset处开始读取,比如说offset为2,就从第二个开始读取length个。但好像与事实不相符。我是初学者。
    还请牛人多多指教下

作者: zzy7186   发布时间: 2011-01-17