file open

 有的人經常喜歡用C的函數,比如fopen(),

FILE* fp=fopen("D://11.txt", "r");
if(fp)
{
fclose(fp);
}
estlib.lib加上了,運行可以,退出的時候crash了,請問是什麼原因。沒有這段代碼的時候一切正常。

 

答案如下:

CloseSTDLIB() ;(加上頭文件 libc/sys/reent.h

把這個函數添加在這些語句的後面。樓主說的crash是報錯alloc嗎?

因爲在symbian當中是沒有靜態可寫全局變量(Writable Static Data)的,所以,stdlib使用線程本地存儲來代替可寫全局變量。但是系統自己不知道什麼時候釋放這些內存。所以你要主動的通過這個函數來告訴系統。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章