I have a weird problem when I test C++ STL features.
If I uncomment the line if(eee), my while loop never exits.
I'm using vs2015 under 64-bit Windows.
int i = 0;
istream& mystream = data.getline(mycharstr,128);
size_t mycount = data.gcount();
string str(mycharstr,mycharstr+mycount);
istringstream myinput(str);
WORD myfunclist[9] = {0};
for_each(myfunclist,myfunclist+9, [](WORD& i){ i = UINT_MAX;});
CALLEESET callee_set;
callee_set.clear();
bool failbit = myinput.fail();
bool eof = myinput.eof();
while (!failbit && !eof)
{
    int eee = myinput.peek();
    if (EOF == eee) break;
    //if (eee) // if i uncomment this line ,the failbit and eof will always be false,so the loop will never exit.
    {
        myinput >> myfunclist[i++];
    }
    //else break;
    failbit = myinput.fail();
    eof = myinput.eof();
    cout << myinput.rdstate() << endl;
}
 
     
     
    