you're getting screwed over by the globalization... what you did was instantiate paramvar in two different places...
what you need to do is include header.h in data_driver.cpp, and instantiate in main. then rewrite Get_Genetic_Distances to either take a reference to an int as it's argument, or return an int.
reworked, your files look like this (I'm using references):
using namespace std;
cout << "nummark is " << p.nummark << endl;
void Get_Genetic_Distances(datavar &data,int&p)
inFile >> p;
cout << "Number of marks is " << p << endl;