![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| gromo |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 63 Регистрация: 2.9.2009 Репутация: нет Всего: нет |
есть текстовый файл с вот таким содержимым (вместо "..." некий текст):
Мне нужно выбрать значение 0.000000E+00 после РАСШИРЕННАЯ ПЕЧАТЬ. Относит. время (час) =, а также все значения после PsiAvr PsiMax ShAvr ShMax. Пытаюсь сделать вот так:
но не получается. Помогите, пожалуйста, решить эту задачу Это сообщение отредактировал(а) gromo - 25.12.2011, 21:41 |
||||
|
|||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 6 Всего: 135 |
ещё бы. fscanf при нахождении %s в форматной строке ждёт, что ему дадут указатель на char в качестве параметра, который нужно заполнять, а он получает... класс CString. Разницу чуешь ? В общем см. в сторону регулярных выражений (хз. есть ли они в MFC, в boost - точно есть) Добавлено через 11 минут и 28 секунд Алгоритм должен быть примерно следующий (псевдокод)
-------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| gromo |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 63 Регистрация: 2.9.2009 Репутация: нет Всего: нет |
borisbn, отличная идея, но раньше с регулярками в С не работал
если не трудно помоги, пожалуйста, написать код для моего варианта |
|||
|
||||
| feodorv |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 9 Всего: 45 |
А зачем такие сложности с регулярными выражениями?
Почему нельзя заставить работать scanf? Что-то вроде:
Честно говоря, не люблю scanf'ы и обычно разбираю строку ручками. PS Очень неприятная у Вас конструкция с if( scanf && scanf ) -------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
|||
|
||||
| gromo |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 63 Регистрация: 2.9.2009 Репутация: нет Всего: нет |
Пытаюсь реализовать вот так:
но ничего не получается. В чём проблема? Это сообщение отредактировал(а) gromo - 10.8.2011, 00:44 |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 6 Всего: 135 |
gromo,
1. Где выход из ? 2. зачем это ? 3. fscanf возвращает количество переменных, которое она заполнила, а не true/false. Т.е., если заполнена даже одна переменная (а не все), то твоя конструкция if ( fscanf(...) ) отработает... а не должна. 4. (и самое главное) - не компилируется ? - компилируется, запускается и вылетает ? - запускается, не вылетает, но работает не так, как задумано ? кста, если последний вариант, то для этого существует отладчик... и ещё: тебе feodorv дал рабочий вариант, который нужно всего чуть-чуть допилить до твеоих нужд ( заменить ... на то, что там должно быть и реализовать ф-цию addLine ). Чего не юзаешь ? -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |