io scaffold

This commit is contained in:
bronku 2025-10-13 08:21:00 +02:00
parent 682bb557af
commit 2b222dda0b
3 changed files with 109 additions and 15 deletions

View file

@ -6,18 +6,6 @@ typedef struct {
int x;
} record;
static inline int read_record(FILE* stream, record* out)
{
int result = fscanf(stream, "%d %d %d %d %d %d", &out->a[0], &out->a[1], &out->a[2], &out->a[3], &out->a[4], &out->x);
if (result == 6) {
return 0;
}
if (result == EOF) {
return EOF;
}
return -2;
}
static inline int g(const record* x)
{
int out = 0;
@ -37,3 +25,21 @@ static inline int compare_records(const void* a, const void* b)
const int gb = g(rb);
return (ga > gb) - (ga < gb);
}
static inline void print_record(FILE* stream, const record* out)
{
fprintf(stream, "[%d %d %d %d %d] x=%d, g=%d",
out->a[0], out->a[1], out->a[2], out->a[3], out->a[4], out->x, g(out));
}
static inline int read_record(FILE* stream, record* out)
{
int result = fscanf(stream, "%d %d %d %d %d %d", &out->a[0], &out->a[1], &out->a[2], &out->a[3], &out->a[4], &out->x);
if (result == 6) {
return 0;
}
if (result == EOF) {
return EOF;
}
return -2;
}