#include "program.h" #include #include #include struct Program* load_program(char* filename) { FILE* f = fopen(filename, "r"); if (f == NULL) { return NULL; } int num_instructions; int num_read = fread(&num_instructions, 4, 1, f); if (num_read != 1) { return NULL; } int program_size = 4 + num_instructions * 4; struct Program* program = (struct Program *)malloc(program_size); program->num_instructions = num_instructions; num_read = fread(&program->instructions, 1, program_size-4, f); if (num_read != program_size-4) { return NULL; } fclose(f); return program; }