我使用C和需要,我可以寫入任意的字節的兩個,並從讀出的字節流緩衝器機構。我寧願與平臺無關的東西(或者至少可以在osx和linux上運行)。有人知道任何寬鬆的輕量級庫或代碼比我可以放入嗎?Ç流緩衝器
我已經使用了libevent內的緩衝區,我可能最終會走這樣一條路,但似乎矯枉過正有libevent的作爲依賴時,我沒有做任何類型的基於事件的IO。
我使用C和需要,我可以寫入任意的字節的兩個,並從讀出的字節流緩衝器機構。我寧願與平臺無關的東西(或者至少可以在osx和linux上運行)。有人知道任何寬鬆的輕量級庫或代碼比我可以放入嗎?Ç流緩衝器
我已經使用了libevent內的緩衝區,我可能最終會走這樣一條路,但似乎矯枉過正有libevent的作爲依賴時,我沒有做任何類型的基於事件的IO。
如果你不依賴於C++和STL的可能是一些位介意的話,可以使用std :: stringstream的。在它周圍寫一個薄C包裝應該不會太困難。
是setbuf(3)
(和它的別名)的「機制」您正在尋找?
請考慮下面的例子:
#include <stdio.h>
int main()
{
char buf[256];
setbuffer(stderr, buf, 256);
fprintf(stderr, "Error: no more oxygen.\n");
buf[1] = 'R';
buf[2] = 'R';
buf[3] = 'O';
buf[4] = 'R';
fflush(stderr);
}
'S/STL/C++標準Library'。 STL沒有'std'命名空間。 –
@Tomalak:我可能實際上意味着「一些東西,使用模板」(我不知道有多少的std ::'的basic_string <>'/等通過模板實例增加你的代碼大小)。但是'的std :: VECTOR'一直爲我工作... –
我想你是誤會我了。 –