Lom |
Отправлено: 23.09.2005, 21:05 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 13
|
Здраствуйте.
У меня возникла непонятка с таким вот кодом:
CODE |
#include <fstream>
#include <iomanip>
...
char s[70];
fstream file;
file.open(NameFile.c_str(), ios::in);
f >> setw(70) >> s; //здесь проблема
...
|
Я предполагал, что с таким манипулятором (setw(70)) я прочитаю ровно 70 символов в массив s. А на самом деле читается только до первого пробела.
Подскажите пожалуйста в чем моя ошибка.
Как считать заданное количество символов? |
|
Георгий |
Отправлено: 24.09.2005, 23:31 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
а оно вроде бы только на вывох действует.
для ввода используйте методы getline или read |
|
Lom |
Отправлено: 25.09.2005, 00:06 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 13
|
Спасибо. Как обойтись без setw я разобрался.
Но вот табличка в хелпе
QUOTE |
Manipulator Use Effect Equivalent
...
setw(int n) io Sets minimal field width io.width(n)
...
|
(io) говорит о том, что манипулятор действует как на вход так и на выход.
Значит либо ошибка в хелпе, либо я чего-то не догоняю.
Отредактировано Lom — 25/09/2005, 00:08 |
|