Both files define variable k
as an integer (int
).
As a result, the linker sees two variables with the same name, and is unsure which one it should use if you ever refer to k
.
To fix this, change one of the declarations to:
extern int k;
That means: "k is an integer, declared here, but defined externally (ie. the other file)."
Now there is only one variable k
, that can be properly referred to by two different files.