| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Чтение двух чисел из файла |
| Автор: Teplovoz 23.1.2006, 00:31 |
| Просто прочитать два числа из файла средствами С++ : file >> a >> b; Но как их прочитать, если последняя цифра первого числа касается перпой цифры второго числа? P.S. Ширина поля каждого числа известна.Функция setw() не помогает |
| Автор: chipset 23.1.2006, 00:35 |
| Либо это невозможно либо я не понял задачи. Как ты их можешь сможешь отделить то? |
| Автор: Partizan 23.1.2006, 01:58 |
| a setw не помогает потому, что она устанавливает минимальную длину вводимого/выводимого значения |
| Автор: maxim1000 23.1.2006, 03:43 |
| пожалуй, лучше просто прочитать известное количество символов и вытянуть оттуда первое число, а потом - прочитать остальное... что-либо проще в голову не приходит... |
| Автор: chipset 23.1.2006, 05:29 |
| Пардон, прочитал как неизвестна. |
| Автор: azesmcar 23.1.2006, 09:46 |
| Teplovoz а бинарный файл чем не подxодит? Добавлено @ 09:47 сразу избавишся от парсинга и конвертаци... |
| Автор: nikitao 23.1.2006, 16:51 | ||
пишу от руки(могу ошибаться)
|
| Автор: sergejzr 23.1.2006, 17:06 | ||
| Нормально Толко atoi не к чему, если не проверяешь ошибки, потому что точно знаешь, что там только цифры. Тогда можно сделать так:
Но конечно лучше будет читать строку, разбивать её и парсить обе части strtol. Параллельно проверяя на ошибку. |
| Автор: threef 23.1.2006, 18:08 | ||
|
| Автор: maxim1000 23.1.2006, 20:12 |
| лучше все-таки a=a*10+x-'0', а то получается, что значимость разряда увеличивается с движением вправо, а она должна уменьшаться еще нули в конце строк, а их там некуда ставить... |
| Автор: Teplovoz 23.1.2006, 21:09 |
| Большое спасибо за предложенные варианты.... буду пробовать.... |