Форум программистов, компьютерный форум CyberForum.ru

разбор строк вида параметр=значение - C++

Восстановить пароль Регистрация
 
kin63camapa
7 / 7 / 1
Регистрация: 23.03.2010
Сообщений: 15
24.04.2010, 18:25     разбор строк вида параметр=значение #1
Есть файл с набором строчек:
параметр=12345
Нужен самый быстрый способ инициализировать набор переменных int из этого файла проблема в том что переменных около 100 а параметры в файле написаны в разнобой.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2010, 18:25     разбор строк вида параметр=значение
Посмотрите здесь:

В строке записано выражение вида m/n, где m и n – натуральные числа. Дописать в строку значение этого выражения, округлив его до сотых. C++
C++ С клавиатуры вводится выражение вида с ор с (с-цифра, ор-знак операции). Вычислить значение выражения. Использовать оператор вариантов.
C++ Определить функцию для расчета суммы цифр натурального числа. Входной параметр – число. Возвращаемое значение – сумма.
Определить функцию для расчета суммы цифр натурального числа. Входной параметр – число. Возвращаемое значение – сумма C++
C++ Программа должна возвращать новый массив, состоящий из строк вида "И. Фамилия"
Дана строка вида а1-а2+а3-а4+а5...Посчитать значение при обработке данной строки C++
Тождество (разбор строк) C++
Значение lim-1 неизвестно. Как программа узнаёт размер? или это формальный параметр C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nick Alte
Эксперт С++
1590 / 982 / 115
Регистрация: 27.09.2009
Сообщений: 1,897
Завершенные тесты: 1
24.04.2010, 19:14     разбор строк вида параметр=значение #2
Цепочка рассуждений простейшая. Не будем скрывать того факта, что имена переменных существуют только до компиляции. Потом это уже всего лишь смещения. Следовательно, тебе надо установить связь между символьным обозначением величины и переменной. Поскольку переменных много, ручной поиск был бы безумием. Следовательно, связи "строка-адрес переменной" должны быть упакованы в таблицу, поиск в которой можно осуществлять циклом. Поскольку все параметры int, переменные можно легко упихать в состав связи:
C++
1
2
3
4
struct Parameter{
    const char* const Name;
    int Value;
};
В массиве из таких структур можно и хранить свои параметры.
C++
1
2
3
4
Param params[] = {
    {"FirstParameter", 3},  // Второе число в скобках - значение по умолчанию
    {"SecondParameter", 7}
};
К сожалению, есть небольшое неудобство в том, что обращаться к этим значениям в ходе работы программы придётся опять же через сопоставленные им строки:
C++
1
2
// вместо int x = FirstParameter + SecondParameter; надо писать
int x = GetParam("FirstParameter") + GetParam("SecondParameter");
Реализация функций int GetParameter(const char* name) и void SetParameter(const char* name, int value) тривиальна и сложностей не составит. Линейный поиск в данном случае вполне уместен.
Yandex
Объявления
24.04.2010, 19:14     разбор строк вида параметр=значение
Ответ Создать тему
Опции темы

Текущее время: 19:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru