Разве это не возможно через оператор >>?
Источники:
http://en.cppreference.com/w/cpp/io/basic_istream/operator_gtgt
http://www.cplusplus.com/reference/istream/istream/operator%3E%3E/
Значение ‘s’ остается прежним: кажется, что оно не захватывает число из входного потока.
vector<signed short> CReadFileTest::ReadIntegersFromFile( const char * filename )
{
ifstream ifs(filename, ifstream::in, ifstream::binary);
vector<signed short> vec ;
if (ifs)
{
signed short s ;
while (!ifs.eof())
{
ifs >> s;
vec.push_back(s);
}
ifs.close();
}
return vec;
}
Когда вы открываете бинарный файл, вам придется использовать читать.
Других решений пока нет …