#include #include "dk4membuf.h" #include "dk4membf.h" int main(void) { char buf[32]; dk4_er_t er; dk4_membuf_t *mbptr; size_t rdb; int cc; int res; dk4error_init(&er); mbptr = dk4membuf_open(&er); if (NULL != mbptr) { cc = 1; while (1 == cc) { rdb = fread(buf, 1, sizeof(buf), stdin); if (0 < rdb) { if (0 != feof(stdin)) { cc = 0; } res = dk4membuf_store(mbptr, buf, rdb, &er); if (0 == res) { fprintf(stderr, "Failed to save data!\n"); fflush(stderr); } } else { cc = 0; } } res = dk4membuf_size(&rdb, mbptr, &er); if (0 != res) { fprintf(stderr, "Size: %lu\n", (unsigned long)rdb); fflush(stderr); } else { fprintf(stderr, "Size calculation failed!\n"); fflush(stderr); } res = dk4membuf_to_file(stdout, mbptr, &er); if (0 == res) { fprintf(stderr, "Failed to write output!\n"); fflush(stderr); } dk4membuf_close(mbptr); } return 0; }