我在C程序中使用'fopen'以只讀模式(r)打開文件。但就我而言,我觀察到fopen調用不會返回。它不返回NULL或有效指針 - 執行在fopen調用時被阻塞。該補丁的文件是絕對正確的(我已經證實了這一點),並沒有權限相關的問題。任何人都可以告訴可能是什麼原因這種行爲。任何形式的幫助都是非常可觀的。有什麼與gcc或glibc有關的嗎?fopen不返回
編輯
下面是示例代碼
printf("%s %d\n",__FUNCTION__,__LINE__);
if ((fp = fopen(argv[1], "r")) == NULL) {
printf("%s %d\n",__FUNCTION__,__LINE__);
return;
}
printf("%s %d\n",__FUNCTION__,__LINE__);
當我運行這段代碼,我只得到了第一次印刷(調用的fopen之前),之後計劃只是暫停。所以fopen不能完成它的操作。該文件是一個擴展名爲「.conf」的簡單配置文件,可以通過vi,cat等其他方式打開該文件。不應該有任何與NFS相關的問題。文件系統是ext3。
由於提前, Souvik
郵政碼字符/塊特殊文件。沒有這個我們不能分辨。包含您傳遞給fopen的參數(包含值)。 – 2010-12-20 14:04:40
如果你不能發佈我們的代碼,請在該場景中發佈示例代碼! – Sudantha 2010-12-20 14:05:45
請指定文件系統的類型。 – Simone 2010-12-20 14:06:36