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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
dzrkot
zzzZZZ...
519 / 349 / 53
Регистрация: 11.09.2013
Сообщений: 1,998
#1

просьба просто скомпилить и запустить код - C++

28.12.2013, 20:41. Просмотров 226. Ответов 2
Метки нет (Все метки)

просьба просто скомпилить и запустить код (в любой IDE) т.к. товарисч говорит, что в той же IDE что и у меня он этого сделать не может...
Интересует чтобы просто прога работала от начала до конца

сначала вводится кол-во структур, все поля типа стринг , потом наво ввести имя совпадающее с 1 из заполненных, и заполнить новую структуру, она в текстовом файле добавится нперед структурой с указанным именем

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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#include <iostream>
#include <cstring>
#include <fstream>
 
using namespace std;
 
typedef struct kniga
{
string name;            // название
string avtor;           // автор
string god_izdaniya;    // год издания
string stranic;         // кол страниц
};
 
 
void coutFile(kniga *a, ifstream &out) // функция считывания из файла в структуру а
{
getline (out,a->name,' ');
getline (out,a->avtor, ' ');
getline (out,a->god_izdaniya, ' ');
getline (out,a->stranic, '\n');
}
 
void cinFile(kniga *a, ofstream &in)  // функция ввода данных структуры в файл, аргументы функции - указатель на структуру и ссылка на объект ofstream
{
in<<a->name<<" "<<a->avtor<<" "<<a->god_izdaniya<<" "<<a->stranic<<"\n\0";
delete a;
}
 
void cinStruct(kniga *a)              // функция для записи данных в структуру, вх аргумент - указатель на структуру
{
cout<<"name:";
getline (cin,a->name);      // getline записывает введённую строку с клавиатуры в name
cout<<"avtor:";
getline (cin,a->avtor);
cout<<"god:";
getline (cin,a->god_izdaniya);
cout<<"stranic:";
getline (cin,a->stranic);
}
void print(kniga *a)       // функция печати, т.е. позволяет выводить на экран структуру
{
    cout<<a->name<<" "<<a->avtor<<" "<<a->god_izdaniya<<" "<<a->stranic<<endl;
}
 
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
int main ()
{
ofstream in("f.kniga.txt"); // создаем объект ofstrem (лучше немного почитайте про него и ifstream)
ifstream out("f.kniga.txt");
int size;                   // переменная для кол-ва структур
cout<<"Enter size : ";
cin>>size;
cin.get();// для того, чтобы корректно работал ввод с калвы
 
cout<<"Vvod danix"<<endl;
for(int i=0; i<size;i++)    // цикл, в котором вызываем функцию для заполнения структуры а и ввода данных в файл
{
kniga *a=new kniga;   // создаем указатель а на память и выделяем её под структуру
cout<<"\nstruct number:"<<i+1<<endl;
cinStruct(a);         // заполняем структуру
cinFile(a,in);        // записываем её в файл
}
 
in.clear();           // скидываем флаги и возвращаем указатель в начало файла
in.seekp(0);          //
 
 
kniga** b=new kniga*[size]; // выделяем память под массив структур, каждый элемент - указатель на структуру
int i=0;            // счётчик дя записи информации в массив b[]
 
while(!out.eof())
{
kniga *a=new kniga; // выделяем память под структуру
coutFile(a,out);    // считываем из файла данные в структуру а
b[i]=a;             // записывает адрес указателя а в массив b[]
i++;                // итерируем счётчик
}
 
string name;
cout<<"Please enter name:";
cin>>name;
 
ofstream fileAddDelete("f.kniga.txt"); // осчищаем файл и записываем в него массив b[] начиная -
    for (int i=3;i<size;i++)           // -  с 3 позиции (т.е. без строк 0, 1 ,2)
    {
    if (!strcmp(b[i]->name.c_str(),name.c_str()))   // првоеряем имя
    {
    kniga *a=new kniga;         // если имя совпало, то выделяем память под структуру а
    cin.get();                  // эта страчка для корректной работы ш
    cinStruct(a);               // функция для заполнения структуры а
    cinFile(a,fileAddDelete);      // функция записи структуры в файл
    delete a;                   // очищаем память от а, т.к. а теперь храниться в файле
    }
    cinFile(b[i],fileAddDelete);// функция записи структуры b[i] в файл
    }
fileAddDelete.close();          // закрываем поток
delete [] b;                    // очищаем память массива b[]
return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.12.2013, 20:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос просьба просто скомпилить и запустить код (C++):

Скомпилить код алгоритма симметричного шифрования - C++
ребят, помогите плз, не могу скомпилить...не работает.. нужен экзэшник...https://code.google.com/p/cryptospecs/wiki/Symmetrical вот...

Просьба оценить код - C++
Данный код реализует массивы, размеры которых можно легко изменять, а так же которые можно легко склеивать. Прошу оценить его и...

Не получается запустить длинный код Алгоритма Гомори, код правильный. - C++
Собственно как запустить код через С++Builder 6 #include&lt;ctype.h&gt; #include&lt;string.h&gt; #include&lt;conio.h&gt; #include&lt;stdio.h&gt; ...

Код, который ломает MSVC компилятор (просто делюсь) - C++
Привет! Иногда приходится кое-что делать под виндой и сегодня случайно наткнулся на такой креш void f(const std::string &amp;s) { ...

Дан код, надо чтобы выводил не просто число, а по модулю - C++
Дан код, надо чтобы выводил не просто число, а по модулю, подскажите как сделать ? #include &lt;stdio.h&gt; #include &lt;conio.h&gt; ...

Подправьте код, чтобы норм компилировался, просто у меня старый источник примеров по C++ - C++
Подправьте код, чтобы норм компилировался, просто у меня старый источник примеров по C++ #include &lt;iostream&gt; #include &lt;conio.h&gt; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
28.12.2013, 21:08 #2
dzrkot, http://codepad.org/
http://ideone.com/

Там скомпилируй и скинь ему в качестве доказательства.
0
dzrkot
zzzZZZ...
519 / 349 / 53
Регистрация: 11.09.2013
Сообщений: 1,998
28.12.2013, 22:02  [ТС] #3
Цитата Сообщение от nexen Посмотреть сообщение
dzrkot, http://codepad.org/
http://ideone.com/
Там скомпилируй и скинь ему в качестве доказательства.
там у него в ходе выполнения якобы ошибка
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.12.2013, 22:02
Привет! Вот еще темы с ответами:

Код С++ 6.0 запустить в Vs2010 - C++
Я совсем новичок (9 дней), скачал кучу книжек для изучения С++ и вот какая проблема: в книгах приведены примеры для С++ 6.0 , у Петцолда...

Как запустить имеющийся код? - C++
Как вставить скопированный текст в С++. Пожалуйста подскажите!

Нельзя запустить код программы - C++
Подскажите пожалуйста почему я не могу скомпилировать и запустить код на C++ в VS 2012 Express, а Dev-C++ могу...

Не могу запустить следующий код - C++
class Tokenizer { private: string content; string delims; size_t npos; public: //constructors and destructors...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru