perl函式說明 getc

2021-06-22 14:44:09 字數 656 閱讀 9928

這個函式從附著到 filehandle 上的輸入檔案返回下乙個位元組。在檔案結尾的時候,或者碰到 i/o 錯誤的時候它返回 undef。如果省略了 filehandle,那麼該函式從 stdin 中讀取。

這個函式有點慢,但是偶爾可以用於從鍵盤上讀取乙個字元輸入(實際上是位元組)——前提是你能讓你的鍵盤輸入不經過緩衝。這個函式需要從標準 i/o 庫里來的未經緩衝的輸入。糟糕的是,標準的 i/o 庫還沒有標準到能夠提供一種可移植的方法,告訴下層作業系統**無緩衝的鍵盤輸入到標準 i/o 系統。要做著件事情,你必須稍微更聰明一點,並且採取作業系統相關的做法。在 unix 裡,你可以說:

if ($bsd_style)  else 

$key = getc;

if ($bsd_style) else

print "\n";

上面的**把在終端上敲入的下乙個字元(位元組)放到字串 $key 裡。如果你的 stty 程式有象 cbreak 這樣的選項,那麼你就需要 $bsd_style 為真的地方的**。否則你就需要它為假的地方的**。判斷 stty(1) 的選項就留給讀者做練習吧。

posix 模組用 posix::getattr 函式提供了乙個做這件事情的乙個更具移植性的版本。又見來自離你最近的 cpan 站點裡的 term::readkey 模組獲取更具移植性和更靈活的方法。

perl函式說明 chroot

chroot chroot filename chroot如果成功,filename 成為當前程序的新的根目錄 用 開頭的路徑名的起點。這個目錄是跨 exec 呼叫繼承的,以及被所有 chroot 呼叫後 fork 出來的子程序繼承。我們沒有辦法撤消一次 chroot。出於安全原因,只有超級使用者可...

perl函式說明 close

close close filehandle close這個函式關閉與 filehandle 關聯的檔案,套接字,或者管道。如果省略引數,那麼它關閉當前選定的檔案控制代碼。如果關閉成功它返回真,否則返回假。如果你準備馬上就對 filehandle 做另外一次 open,那麼你用不著關閉它,因為下一次...

perl函式說明 defined

defined defined expr defined這個函式返回乙個布林值,表明 expr 是否是乙個已經定義的數值。你處理的大多數資料都是已經定義的,但是乙個標量如果不包含有效的字串,數字,或者引用值,那麼就說它是未定義的數值,或者簡稱 undef。把乙個標量變數初始化為乙個特定的值將定義它,...