Update zu test.c:
Code:
#include <stdio.h>
#include "strbuf.h"
int main( int argc, char * argv[] ) {
if( argc == 2 ) {
FILE * fp = fopen( argv[ 1 ], "r" );
if( !fp ) {
fprintf( stderr, "can not open file: %s\n", argv[ 1 ] );
}
else {
int errnum = 0;
strbuf_t buf;
/* Der einzige Fehler der auftreten könnte ist ENOMEM: nicht genügend Speicher. */
if( (errnum = strbuf_init( &buf, STRBUF_BLOCKSIZE )) == 0 ) {
if( (errnum = strbuf_readall( &buf, fp )) == 0 ) {
printf( "%s:\n%s", argv[ 1 ], strbuf_str( &buf ) );
}
else {
fprintf( stderr, "error while reading from file: %s\n", strerror( errnum ) );
}
strbuf_destroy( &buf );
}
else {
fprintf( stderr, "error initialising buffer: %s\n", strerror( errnum ) );
}
fclose( fp );
}
}
else {
fprintf( stderr, "usage: strbuf_test [file]\n" );
}
return 0;
}
Lesezeichen