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

имитировать работу препроцессора #define - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задан текст. Определить, входит ли в него заданное слово и сколько раз. http://www.cyberforum.ru/cpp-beginners/thread728751.html
Задан текст. Определить, входит ли в него заданное слово и сколько раз.
C++ Удалить N элементов из массива начиная с номера K Сформировать массив из n элементов с помощью датчика случайных чисел (n задается пользователем с клавиатуры). Удалить N элементы из массива начиная с номера K. Вывести полученный результат. Добавить... http://www.cyberforum.ru/cpp-beginners/thread728750.html
C++ Какие буквы и сколько раз встречаются в этом тексте.
Строка, содержащая произвольный русский текст, состоит не более чем из 200 символов. Написать, какие буквы и сколько раз встречаются в этом тексте. Ответ должен приводиться в грамматиче-ски...
C++ вывод на экран
Вычислить и вывести на экран в виде таблицы значения ф-ции F в интервале от х1 до х2 с шагом dx. Значения параметров a,b,c, x1,x2,dx должны запрашиваться с клавиатуры и проверять на корректность...
C++ Разобрать код http://www.cyberforum.ru/cpp-beginners/thread728725.html
Дан ориентированный взвешенный граф. Требуется найти минимальные расстояния от вершины S до всех остальных вершин. Вход: В первой строке через пробел записаны два натуральных числа N и S (S <= N <...
C++ вывод на экран (выводит числа из файла округленными) Программа выводит на экран числа из файла, так что числа стоящие на нечетных местах выводятся с одним знаком после запятой, а четных с двумя. Всё работает, но выводятся округлённые... подробнее

Показать сообщение отдельно
Nikolai699
16 / 16 / 3
Регистрация: 15.03.2012
Сообщений: 106
13.12.2012, 19:22  [ТС]
вот что у меня получилось, но тут куча ошибок, на словах то понятно что сделать, но как реализовать затрудняюсь.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include<cstdlib>
#include<iostream>
#include<fstream>
#include<list>
#include<string>
#include<map>
using namespace std;
 
int main(){
    ifstream in("text.txt");
    ofstream off("off.txt");
    if(!off)
        cout<<"error!!!"<<endl;
    else
        cout<<"ok"<<endl;
 
    list<string> word_list;
    list<string>::iterator i;
 
    string def="#define";
    string str;
    //заполняю word_list
    while(1){
        getline(in,str);
        word_list.push_back(str);
        if(in.eof())
            break;
    }
    
    //создаю карту
    map<string, string>define_map;
    map<string, string>::iterator it;
 
    //прохожу по word_list
    for(i=word_list.begin(); i!=word_list.end();i++)
    {
        if(*i=def)
            define_map.insert(map<string, string>(*i++),*i+2);
        word_list.erase(def);
        if(*i==it->first)
            *i=it->second;
    }
    
    for(i=word_list.begin(); i!=word_list.end(); i++)
        cout<<*i<<endl;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru