[問題] STDIN問題

看板Perl作者 (projectd)時間12年前 (2012/11/21 17:54), 編輯推噓0(008)
留言8則, 2人參與, 最新討論串1/1
請問大家 我在有open檔案讀取的時候,再呼叫<STDIN>來讀鍵盤輸入,結果輸入完按enter 都只是換行,而不是輸入完畢,要按ctrl+d + enter才能結束輸入,沒有open檔 案時就沒有這個問題,請問這是什麼問題呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.66.243.96

11/21 20:24, , 1F
下面的<>處在串列語境,讀到EOF為止傳回讀到的每一行組成的串列
11/21 20:24, 1F

11/21 20:24, , 2F
(在非win32的shell, 要用單引號(')取代雙引號(")執行)
11/21 20:24, 2F

11/21 20:24, , 3F
perl -we "my @t = <> ; print join q{,}, @t;"
11/21 20:24, 3F

11/21 20:25, , 4F
#下面的<>在純量語境,讀到\n為止
11/21 20:25, 4F

11/21 20:25, , 5F
perl -we "my $t = <> ; print $t";
11/21 20:25, 5F

11/21 20:26, , 6F
perl -we "my @t = scalar <> ; print @t"; #純量語境
11/21 20:26, 6F

11/22 10:26, , 7F
原來是有修改$/,從\n改成;,所以只按enter沒有用
11/22 10:26, 7F

11/22 10:27, , 8F
要讀到;為止
11/22 10:27, 8F
文章代碼(AID): #1GhAJi3A (Perl)
文章代碼(AID): #1GhAJi3A (Perl)