#1.
You shouldn't be including source files. Other source files should be added as a part of your project. This is done either through settings in your IDE or additional parameters in a makefile or command line compiler.
#2.
Code:
while(getline(in, line) && in.good() )
A nit, but that last part in red isn't needed.
#3.
Code:
...
for(int i=0, leng=row.size(); i<leng; i++)
spa_data spa; //declare the SPA structure - found in the header file spa.h attached
int result;
float min, sec;
...
Is that a typo? Without brackets ({}), the above for loop will only loop over the single statement below it (the declaration of your spa variable). If you want to loop over more than one statement, then you need those brackets. Based on the remaining code, I wonder what you need the for loop for.
#4.
Code:
spa.year = atoi(row[2]);
spa.month = atoi (row[3]);
spa.day = atoi (row[4]);
spa.hour = 12;
spa.minute = 00;
spa.second = 00;
spa.timezone = +1.0;
spa.delta_t = 67;
spa.longitude = atoi(row[8]);
spa.latitude = atoi(row[7]);
spa.elevation = atoi(row[9]);
spa.pressure = 820;
spa.temperature = 30;
spa.slope = atoi(row[6]);
If you look at the available documentation for atoi, you'd see that it accepts a const char* argument but you are attempting to pass in string objects. If you're going to use atoi you therefore need to pass in the correct argument type. Thankfully, string objects have a c_str method that returns what you need, for example:
Code:
spa.year = atoi(row[2].c_str());
spa.month = atoi (row[3].c_str());
#5.
Code:
int inquotes=false;
Should probably be a bool type instead of int.