2011-09-27 47 views
0

我目前支持一些舊版軟件,編譯在gcc 2.95.3中。該程序運行在SBC中,偶爾我必須通過遠程登錄才能修復問題。我注意到,當SBC單獨運行時,它顯示出一些意想不到的行爲,例如錯過了處決。如果printf沒有處理,會發生什麼

當我做telnet時,殺死進程並手動執行它,它保持良好的方式。我懷疑這與執行printf沒有適當的終端/控制檯打印它有關。

如果printf沒有被處理,會有什麼影響呢?

+2

嘗試運行標準輸出重定向到/ dev/null的進程? –

+0

是的,我可以,但如果沒有處理printf會發生什麼,例如標準輸出是控制檯,但沒有控制檯 – freonix

+0

建議的目的是查看當使用標準輸出重定向到/ dev/null時是否仍然出現問題 - 如果不掛起,那麼您的假設可能是正確的 - 如果它仍然掛起那麼問題可能在其他地方。 –

回答

0

難道是系統試圖打印到硬件串行端口(它真的很慢),而當你的telnet替換爲TCP端口?

0

這取決於你使用stdio庫,大多數人會嘗試寫入反正安慰,所以......

你應該重定向您的標準輸出和STDERR爲NULL或文件,這應該是安靜的容易。 gcc 2.95非常穩定,所以我們幾乎可以排除任何問題。

相關問題