Perl read ($ buf) işlevinin $ buf değişkeninin içeriğini nasıl değiştirebileceğini anlayamıyorum. $ buf bir referans değildir, bu yüzden parametre kopya ile verilir (c/C++ bilgimden). Peki, $ buf değişkeni arayanda nasıl değiştirilir?Perl read() işlevinin arkasındaki sihir ve bir ref değil arabellek nedir?
Bu bir bağ değişkeni midir? setbuf hakkında C dokümantasyon da benim
# Example 1
$buf=''; # It is a scalar, not a ref
$bytes = $fh->read($buf);
print $buf; # $buf was modified, what is the magic ?
# Example 2
sub read_it {
my $buf = shift;
return $fh->read($buf);
}
my $buf;
$bytes = read_it($buf);
print $buf; # As expected, this scope $buf was not modified
İlgili dokümana gösterdiğiniz işaret için çok teşekkürler ve hileler işe yarıyor, teşekkürler –