Table definitions should be in data_structures.h instead of data_structures.c, otherwise other C files who include data_structures.h as it is today wont be able to access struct fields:
int main() {
printf("%s", opcodes_table[0].opcode);
return 0;
}
/home/dafna/mmn/mmn14/c-assembler/main.c:4: undefined reference to `opcodes_table'
Table definitions should be in data_structures.h instead of data_structures.c, otherwise other C files who include data_structures.h as it is today wont be able to access struct fields:
#include "data_structures.h"
Reference:
https://stackoverflow.com/questions/6316987/should-struct-definitions-go-in-h-or-c-file