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

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

Войти
Регистрация
Восстановить пароль
 
WetFil
0 / 0 / 0
Регистрация: 19.05.2013
Сообщений: 92
#1

Как поставить сепаратор в векторе? - C++

16.01.2016, 22:01. Просмотров 210. Ответов 4
Метки нет (Все метки)

Нужно поставить сепаратор в векторе между значениями, для того чтобы отделить их друг от друга. Подскажите пожалуйста как это сделать?
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
struct trip
{
    int number_bus;
    int empty_places;
    int price_ticket;
    char place_GO[26];
    char place_END[26];
};
 
vector <trip> trips;
trip temp_trip;
unsigned int DataBase()
{
    setlocale(LC_ALL, "russian");
 
 
 
    char file_name[1024];
    cout << "Enter name of new DataBase: ";
    //cin.getline(file_name, 20);
    cin >> file_name;
    char way[1024] = "DataBase/";
    strcat_s(file_name, ".txt");
    strcat_s(way, file_name);
    cout << way;
    cout << " was created. \n";
    
    
    cout << "Enter number of the bus: ";
    cin >> temp_trip.number_bus;
    cout << "Enter number of vacant places: ";
    cin >> temp_trip.empty_places;
    cout << "Enter the ticket price: ";
    cin >> temp_trip.price_ticket;
    cout << "Enter place of departure: ";
    cin >> temp_trip.place_GO;
    cout << "Enter place of arrival: ";
    cin >> temp_trip.place_END;
    trips.push_back(temp_trip);
 
    ofstream DataBase(way, std::ios_base::app); // открыли файл для дозаписи
    //DataBase << trips[0];
    DataBase << trips[0].number_bus;
    DataBase << trips[0].empty_places;
    DataBase << trips[0].price_ticket;
    DataBase << trips[0].place_GO;
    DataBase << trips[0].place_END;
    DataBase.close();
    cout << "Flight Information added to " << file_name << endl;
    cin.get();
 
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2016, 22:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как поставить сепаратор в векторе? (C++):

Поставить рандомную матрицу, перепробовал уже много способов. Как поставить? - C++
нужно чтобы матрицу вводил не я после запуска программы,а она сама появлялась с рандомными числами! #include &lt;iostream&gt; #include...

Как работают итераторы в векторе? - C++
Доброго времени суток, нужно удалить i-й элемент вектора, в нем есть функция erase, которая принимает на вход константный итератор. ...

Как заменить слово в векторе - C++
Вот не могу понять как заменить слово в векторе, какой функцией Вот код набросал #include &lt;iostream&gt; #include &lt;vector&gt; #include...

Как грамотно удалить элементы в векторе? - C++
for (vector&lt;fileResult&gt;::iterator p = listExp.begin(); p != listExp.end();p++) { if (p-&gt;select) listExp.erase(p); } делаю...

Как перебрать одно значение переменной в векторе? - C++
поясню: необходимо посчитать количество букв &quot;f&quot; в слове, которое вводит пользователь и вывести его индекс. string a; cin &gt;&gt; a; ...

Как можно записать многомерный массив в векторе? - C++
Всем привет) Есть проблема: не могу понять как можно записать многомерный массив в векторе. т.е. я сначала должен ввести с клавиатуры какой...

4
ivan37
54 / 54 / 46
Регистрация: 11.05.2015
Сообщений: 134
16.01.2016, 22:12 #2
Не очень понятно зачем в вектор добавлять какие-то сепараторы и в чем вообще проблема. Просто добавляешь элементы в вектор и обращаешься к ним по индексу.
C++
1
2
3
4
trips.push_back(t);
trips.push_back(t);
trips.push_back(t);
trip t2 = trips[1];
0
WetFil
0 / 0 / 0
Регистрация: 19.05.2013
Сообщений: 92
16.01.2016, 22:15  [ТС] #3
Просто смори, их потом надо будет записать в файл, и вывести на консоль из файла, а сепаратор (например запятая) нужен для удобочитаемости.
0
nord_v
228 / 177 / 69
Регистрация: 22.08.2013
Сообщений: 724
16.01.2016, 22:51 #4
Цитата Сообщение от WetFil Посмотреть сообщение
Просто смори, их потом надо будет записать в файл, и вывести на консоль из файла, а сепаратор (например запятая) нужен для удобочитаемости.
При выводе на консоль и добавляй свои сепараторы. Ни в файл, ни, тем более, в вектор никакие запятые не нужно помещать. В файл записывай поля структуры через пробел, одна структура - в одной строке:
C++
1
2
3
4
5
    DataBase << trips[0].number_bus << ' ';
    DataBase << trips[0].empty_places << ' ';
    DataBase << trips[0].price_ticket << ' ';
    DataBase << trips[0].place_GO << ' ';
    DataBase << trips[0].place_END << endl;
0
ivan37
54 / 54 / 46
Регистрация: 11.05.2015
Сообщений: 134
16.01.2016, 22:52 #5
WetFil, Ну когда будешь выводить на консоль, тогда и добавишь запятые и прочие разделители.
C++
1
    for_each(trips.begin(), trips.end(), [](const trip& t){cout<<"Bus num: "<<t.number_bus<<" Ticket price: "<<t.price_ticket<<" ...;\n";});
0
16.01.2016, 22:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.01.2016, 22:52
Привет! Вот еще темы с ответами:

Как в векторе вставить элемент перед данным - C++
Например есть вектор из 5 элементов :1,2,3,4,5 мне нужно вставить например число 6 перед 5 эллементом, чтобы было 1,2,3,4,6,5

Как напрямую обратиться к элементу объекта, который находится в векторе? - C++
Только один вопрос. Как напрямую обратится к элементу объекта, который находится в векторе. Например у нас есть вектор. он хранит...

Как применяя erase удалить в векторе n элементов, начиная с номера k? - C++
Помогите, как это записать, чтобы не возникало ошибок? arr.erase(arr.begin() + k, arraySize - (arr.begin() + k));

Как сохранить в бинарный файл ресурсы, указатели на которые лежат в векторе? - C++
Здравствуйте! Вот есть такая програмка: #include &lt;iostream&gt; #include &lt;vector&gt; #define FIELD_LENGHT 20 using namespace std; ...


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

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

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