I'm trying to read from a file and am able to do so successfully, but the isstream::get() function keeps skipping the first character. I read online it's because the cin usually makes the buffer skip the first character, but I am not sure how to fix it on my end.
Here is my main:
int main () {
string fileName;
cout << "Please enter the name of the input file: \n";
cin >> fileName;
//Creates an object and executes appropriate functions
pa3* obj = new pa3(fileName);
obj->seperateCode();
obj->printFields();
return 0;
}
And here is the constructor
 //Constructor
    pa3 (string fileName) {
        char word;
        string temp;
        ifstream userFile;
        string fullFileName = "\"" + fileName + "\"";
        userFile.open(fileName);
        if (!(userFile.is_open())) {
            cout << "Not a valid file\n";
            cout << "Exiting...\n";
            exit(0);
        }
        else {
          //  userFile.unget();
            while (!userFile.eof()) {
                userFile.get(word);
                temp += word;
                if (isspace(word)) {
                    stackImplementation::push(temp, totalFile);
                    temp.clear();
                    }
            }
        }
        for (vector<string>::iterator it = totalFile.begin(); it != totalFile.end(); ++it) {
            cout << *it << " ";
        }
    }
I have tried searching online but cannot apply the solutions to my issue, since most use cin and ignore to get rid of the problem. Any help would be appreciated.
