From 63c370f9b8d7c58c52ecd85a68e3062b41522ff6 Mon Sep 17 00:00:00 2001 From: ov-4 Date: Mon, 5 Jan 2026 11:00:14 +0000 Subject: Data lab initialization --- datalab-handout/btest.h | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 datalab-handout/btest.h (limited to 'datalab-handout/btest.h') diff --git a/datalab-handout/btest.h b/datalab-handout/btest.h new file mode 100644 index 0000000..a011bc1 --- /dev/null +++ b/datalab-handout/btest.h @@ -0,0 +1,32 @@ +/* + * CS:APP Data Lab + */ + +/* Declare different function types */ +typedef int (*funct_t) (void); +typedef int (*funct1_t)(int); +typedef int (*funct2_t)(int, int); +typedef int (*funct3_t)(int, int, int); + +/* Combine all the information about a function and its tests as structure */ +typedef struct { + char *name; /* String name */ + funct_t solution_funct; /* Function */ + funct_t test_funct; /* Test function */ + int args; /* Number of function arguments */ + char *ops; /* List of legal operators. Special case: "$" for floating point */ + int op_limit; /* Max number of ops allowed in solution */ + int rating; /* Problem rating (1 -- 4) */ + int arg_ranges[3][2]; /* Argument ranges. Always defined for 3 args, even if */ + /* the function takes fewer. Special case: First arg */ + /* must be set to {1,1} for f.p. puzzles */ +} test_rec, *test_ptr; + +extern test_rec test_set[]; + + + + + + + -- cgit v1.3.1-4-g156e