Perl 程式設計/關鍵字/printf
外觀
該printf函式等效於print FILEHANDLE sprintf(FORMAT, LIST). 與print唯一的區別是,輸出記錄分隔符,$\, 未附加。引數FORMAT和LIST被解析為一個單一列表,其中第一個引數被理解為格式資訊。
如果省略列表,則$_的內容將被用作格式資訊。要使用printf而沒有printf, 需要一個真正的檔案控制代碼,如FH,而不是一個間接檔案控制代碼,如$fh。在這種情況下,如果$_包含格式資訊,它將被替換為空字串,並且如果啟用,將發出警告。所以,最好使用print當$_的內容將被用作格式資訊。
print比printf更簡單,更不容易出錯!
printf FILEHANDLE FORMAT, LIST
printf FILEHANDLE
printf FORMAT, LIST
printf
$dotextension = ".pl";
$filename = "assign" . $dotextension;
$filename2 = "assign1" . $dotextension;
print $filename . ", " . $filename2 . "\n";
open(my $fh, "<", $filename)
or die "cannot open < " . $filename . ": $!";
open(my $fh2, ">", $filename2)
or die "cannot open < " . $filename2 . ": $!";
read $fh, $f, 1024;
printf($fh2 "%s, ", $f); # Writes contents into $filename2
close($fh);
close($fh2);
返回檔案“assign.pl”的內容
assign.pl, assign1.pl