fgets

    2熱度

    4回答

    我正在使用C++的HTTP服務器,現在它適用於文本文件的請求,但是當試圖獲取jpeg或其他東西時,只有部分該文件被髮送。這個問題似乎是,當我使用fgets(buffer,2000,returned_file)時,它似乎增加了文件位置指示符,遠遠超過它實際上最終放入緩衝區。爲什麼會發生?我把我所有的代碼放在下面。問題發生在響應代碼爲200時發生的while(true)循環中。謝謝任何回覆的人。 //

    1熱度

    1回答

    我現在已經將這個減少到最小的測試用例。到目前爲止,我已經能夠確定這是與ssh管道產生的僞終端有關的問題。將'-t -t'添加到ssh調用中改善了一些事情,因此現在需要第二次調用fgets()才能解決問題。我懷疑ssh命令的stderr輸出在某種程度上可以解決問題,因爲現在我已經將stderr重定向到stdout中執行的ssh代碼中。我不知道「tcgetattr:Invalid argument」錯

    1熱度

    2回答

    我有一個腳本讀取使用的fopen &與fgets RSS提要。 當試圖飼料:http://rss.fok.nl/feeds/nieuws我的腳本掛起,直到達到PHP的max_timeout。 的事情是: 它完美工作(在相同的URL)直到今天。 它仍然有效我的開發MAC MAMP服務器上。 它不生產WAMP服務器上運行(PHP 5.2.8) 我試圖FREAD沒有成功。 有什麼想法?

    1熱度

    4回答

    我有程序等(從link text) FILE* soubor; char buffer[100]; soubor = fopen("file","r"); string outp = ""; while (! feof(soubor)) { fgets(buffer,100,soubor); fputs (buffer , stdout); } fclose(

    11熱度

    5回答

    我有一個執行「tail -f sometextfile」的popen()函數。只要文件流中有數據,顯然我可以通過fgets()獲取數據。現在,如果沒有新的數據來自尾部,fgets()會掛起。我嘗試了ferror()和feof()無濟於事。我怎樣才能確保當文件流中沒有新東西時,fgets()不會嘗試讀取數據? 其中一個建議是select()。由於這是Windows平臺,選擇似乎不起作用,因爲匿名管道

    11熱度

    5回答

    即使EOF已經達到,fgets()是否總是用\ 0終止char緩衝區?它看起來像它(它確實在ANSI K & R書中提供的實現中),但我想我會要求確定。 我想這個問題適用於其他類似的函數,如gets()。 編輯:我知道,\ 0是在「正常」的情況下追加,我的問題是針對EOF或錯誤的條件。例如: FILE *fp; char b[128]; /* ... */ if (feof(fp)) {

    2熱度

    4回答

    現在我使用: char record[BUFLEN]; if(fgets(record, BUFLEN, fp) != NULL) { /* some code */ } 擺脫輸入線,如: city=Boston;name=Bob;age=35 city=New York;name=Michael;age=29 我可以用別的東西用C,會給我不要整個行,

    27熱度

    6回答

    我想知道fgets()和scanf()之間有什麼區別。我使用C作爲我的平臺。

    3熱度

    1回答

    我有一個Python服務器終於工作並響應多個命令的輸出,但是我現在遇到了PHP接收完整輸出的問題。我已經嘗試過諸如fgets,fread之類的命令,似乎可行的唯一命令是「fgets」。 然而,這僅收到對數據線的,然後,我創建了一個while語句以下所示的: while (!feof($handle)) { $buffer = fgets($handle, 4096); echo