[英]Perl chomp convert string into numerical values
我因chomp
感到奇怪。 <STDIN>
將尾隨換行符添加到輸入中,並且我想刪除它,因此我使用如下所示的chomp:
print("Enter Your Name:\n");
$n = <STDIN>;
$n = chomp($n);
print("Your Name: $n");
$out = "";
for ($i =0; $i < 10; $i++)
{
$out .= $n;
print ($out);
print("\n");
}
當我輸入任何名稱值(字符串),例如“ Fox”時,我期望輸出如下:
Fox
FoxFox
FoxFoxFox
FoxFoxFoxFox
etc..
但是,“ Fox”由數值1
代替,即
1
11
111
1111
我試圖從perl的官方手冊中獲取有關排骨的幫助,但是我在那里找不到任何幫助。 有人會解釋為什么chomp會這樣嗎?如何解決這個問題?
我再次回顧了書中的示例,發現它們使用了chomp
witout Assign即:
$n = chomp($n);
# Is replaced by
chomp($n);
確實,通過這種方式,腳本可以按預期方式打印輸出! 我也不知道如何以及為什么?
從關於chomp的perldoc:
它返回從其所有參數中刪除的字符總數
您正在將$ n設置為chomp($ n)的返回值:
$ n = chomp($ n);
做你想做的,你可以簡單地chomp($n)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.