2014-10-02 31 views
-1

對於我的作業之一,我必須讀取一個文件(〜100行)。 爲了處理文件的內容並提取所有行,我使用函數stat分配一個文件大小的緩衝區。我用這個緩衝區讀取功能讀取的文件。 我被告知這種方法很髒。stat獲取文件的大小並複製它

爲什麼它被認爲是髒?我認爲如果文件很短,這意味着char數組的大小是可以接受的,這意味着只有幾個系統調用?

+0

你應該問那些說方法很髒。 – 2014-10-02 18:10:44

+0

我應該問。現在已經太晚了。 – bandera 2014-10-02 18:11:36

+0

我想你應該先檢查文件是否是普通文件。 '''stat'''可以告訴你。除此之外,您可以安全地使用stat檢查文件大小。查看[man](http://pubs.opengroup.org/onlinepubs/000095399/basedefs/sys/stat.h.html)---'''struct stat。 st_size''' ---對於普通文件,文件大小以字節爲單位。對於符號鏈接,包含在符號鏈接中的路徑名的字節長度。 – 2014-10-02 18:13:34

回答