一、問題
????????對?件讀寫之前,需要使? fopen( ) 函數打開該?件:在使?完?件后,需要及時關閉?件。那么,為什么要及時關閉?件呢?
二、解答
?????????件打開的過程是將存放在磁盤等外部設備上的?件讀?到內存中,以?便訪問,對其進?操作。有了?件的打開就要有?件的關閉,否則?件會被誤?。
????????若?件做了?定的修改或操作后不再使?,則需要及時將?件關閉,否則會丟失?件的數據,改動也會丟失。因為向?件寫數據時,是先將數據輸?緩沖區,等緩沖區滿后, 才可以輸出給?件,如果當數據末充滿緩沖區,?程序卻結束了運?,就會將緩沖區中的數據丟失。?如果及時地將?件關閉,則會避免這個問題。因為?件的關閉過程除了關閉所有的?件以外,還會先把緩沖區中的數據輸出到磁盤?件,然后才釋放?件指針變量。
????????及時地關閉?件不僅會保證打開?件不會丟失數據,還會增加機器的運?效率。因為在打開?件時會占??定的內存空間,如果?件打開以后不及時關閉,占?內存會越來越多,可以使?的內存就會越來越少,從?影響機器的運?效率。
三、總結
????????做任何事情都要學會有始有終。既然打開了?件,在不使?此?件時,就要及時地關閉?件。