討論串[問題] 如何強迫 printf 寫回資料
共 3 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者yyshan.時間18年前 (2007/03/03 02:01), 編輯資訊
0
0
0
內容預覽:
引述《N2I.bbs@ptt.cc (NII)》之銘言:. > 一個簡單的測試程式,我將 stdout 轉向到檔案 log,程式執行後,會停在. > loop 裡,按下 ctrl+z ctrl+c 強迫程式結束。. > 檢查 log 檔, ls 的結果都正確寫入,可是字串HELLO卻沒有正確
(還有118個字)

推噓0(0推 0噓 1→)留言1則,0人參與, 最新作者LPH66 (ha(ruhi|yate)ism)時間18年前 (2007/03/02 13:06), 編輯資訊
0
0
0
內容預覽:
一個很奇怪的猜測:. 雖然你底層已經把標準輸出轉走了. 但表層上 stdout這個FILE *變數指向的結構裡記載的底層編號沒有改. 而printf是寫進stdout這變數裡指定的地方. 因此HELLO字串是寫到這已經不在的編號裡去了. 而system會去找底層到底標準輸出現在在哪裡 把東西灌過去.
(還有157個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者N2I (NII)時間18年前 (2007/03/02 10:10), 編輯資訊
0
0
0
內容預覽:
一個簡單的測試程式,我將 stdout 轉向到檔案 log,程式執行後,會停在. loop 裡,按下 ctrl+z 或 ctrl+c 強迫程式結束。. 檢查 log 檔, ls 的結果都正確寫入,可是字串HELLO卻沒有正確寫入,我已經呼叫. fsync() 強迫將 buffer 資料寫回了,為甚麼
(還有540個字)
首頁
上一頁
1
下一頁
尾頁