file結構體又被稱為流。 流的開啟是使用函式file *fopen (const char *path, const char *mode);來實現的,path指的是開啟流資源路徑,mode指的是對流操作的模式。函式執行成功時返回流指標,失敗時返回null。引數mode的取值有六種,代表對流的不同操作模式。
*當給定
」b」引數時,表示以二進位制方式開啟檔案,但
linux
下忽略該引數
當使用fopen對檔案進行操作時建立了乙個檔案,建立的檔案訪問許可權是0666(rw-rw-rw-),linux系統中umask設定會影響檔案的訪問許可權,其規則為(0666 & ~umask)使用者可以通過umask函式修改相關設定如果希望umask不影響檔案訪問許可權,應該將umask的值設定為0;
流的關閉是使用函式
int fclose(file *stream);stream指定的是要關閉的流,當不再需要對乙個流進行操作的時候,要及時的將流關閉。流關閉時自動重新整理緩衝中的資料並釋放緩衝區 。當乙個程式正常終止時,所有開啟的流都會被關閉。流一旦關閉後就不能執行任何操作。
對流進行開啟或關閉時,有時會遇到錯誤,對錯誤資訊的處理主要是通過錯誤資訊處理機制,前面說過,標準錯誤流使用的是無緩衝機制,確保能及時的獲得錯誤資訊。在標頭檔案errnfuo.h中記錄了各種原因造成的錯誤的錯誤號,每個錯誤號對應了自己的錯誤資訊。函式perror能夠輸出錯誤資訊,當知道錯誤號時,使用函式strerror也能輸出錯誤資訊。至於變數errno的值,當程式出現錯誤的時候,系統會自動給errno賦錯誤號。
C 流檔案的開啟與關閉
流 檔案是c 提供的一種特殊形式的檔案,也稱緩衝區型檔案。與普通意義檔案不同,它是c 語言提 供給程式設計師和被除訪問裝置之間的一層抽象的內容,是與物理裝置無關的邏輯裝置。在 流 檔案上,用 來寫操作的函式既可用於寫磁碟檔案,也可用來印表機的輸出,而非 流 檔案與具體裝置相關。c 中 有兩種性質的 ...
Linux下開啟 關閉MySql Server命令
linux下開啟 關閉mysql server命令 開始用net start mysql 啟動mysql,結果發現老報某個檔案不存在,後用下面方式啟動mysql 如果你用的是redhat fedora,那麼就可以用這些命令 開啟 etc init.d mysqld start 關閉 etc init...
linux下開啟關閉埠命令
關閉埠 iptables a input p tcp dport 111 j drop 開啟埠 iptables a input p tcp dport 111 j accept 開放不連續埠 包括單個 iptables a input p tcp m multiport dport 21,20 j...