Использование istringstream дает ошибку | Почему

У меня есть один двоичный файл, который я создал. В нем данные хранятся в двоичной форме, но я покажу его в удобочитаемой форме, например;

 [someOtherData]6759A_block$[someOtherData]

Я храню эти данные «6759A_block $» в temp_S, которые объявлены как строка. Теперь я хочу разделить первые 3 байта от temp_S, а затем сохранить их в unsigned int. Чтобы выполнить свое желание, я написал ниже сегмент кода ;

 unsigned int number;
 { 
 string tmp ( temp_S , 0  ,3 ); 
 istringstream temp_Istream ( tmp ) ;
 temp_Istream >> number;
 }

Однако, когда я компилирую свою небольшую программу, она выдает ошибку, показанную ниже:

error: variable ‘std::istringstream temp_S’ has initializer but incomplete type

У меня следующие вопросы:

  • В чем смысл этой ошибки компилятора?
  • как я могу исправить эту проблему и взять первые три байта данных в unsigned int?

РЕДАКТИРОВАТЬ:

  • платформа linux
  • g ++
5
задан 11 November 2011 в 14:13
поделиться