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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.65
Romiys
3 / 3 / 0
Регистрация: 27.12.2010
Сообщений: 56
#1

vector C++ присвоить в массив - C++

28.02.2011, 15:38. Просмотров 2537. Ответов 6
Метки нет (Все метки)

Помогите пожалуйста найти неполадку в программе. Массиву из 10 целых чисел присвоить 10 целых чисел из вектора. Компилируется, но не выводит числа.


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
#include <iostream>
#include <vector>
using namespace std;
 
int main ()
{
vector<int>ivec1 (10);
const size_t sz_arr = 10;
int arr1[sz_arr];
 
for (vector<int>::size_type ix=0; ix!=ivec1.size(); ++ix) 
{
    ivec1[ix]=ix;
    std::cout<<ivec1[ix]<<endl; 
}
 
     for (vector<int>::size_type ix2=0; ix2!=ivec1.size(); ++ix2) 
     {
         for (int *pbegin = arr1, *pend=arr1+sz_arr; pbegin !=pend; ++pbegin) 
                        
         *pbegin=ivec1[ix]; // kak-to prisvoit' elementu vectora v massiv???
     }
 
for (int *pbegin2 = arr1, *pend2=arr1+sz_arr; pbegin2 !=pend2; ++pbegin2) 
                                                    
cout<< pbegin2 <<endl; 
 
system("pause");
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.02.2011, 15:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос vector C++ присвоить в массив (C++):

Записать числа из файла в двумерный массив или вектор вроде такого vector<vector<int>> - C++
Добрый день, подскажите пожалуйста как лучше и проще считывать файл. в файле записаны числа, разделенные пробелами и запятыми: 1, 2, 3,...

Присвоить контейнеру Vector другой контейнер - C++
Есть функция, которая возвращает QVector (аналог std Vector), при этом она в качестве аргумента сама использует тот вектор, который выдает....

Как vector<string> присвоить конкретные значения? - C++
Как vector&lt;string&gt; присвоить конкретные значения? Когда навожу на знак &quot;=&quot;, возникает ошибка &quot;требуется точка с запятой &quot;;&quot;&quot; const int...

error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall Vector<int>::Vector<int>(void)" (?0?$Vector@H@@QAE@XZ) в функции _main - C++
//Vector.h #include &lt;iostream&gt; #include &lt;Windows.h&gt; #include &lt;climits&gt; #include &lt;vector&gt; #include &lt;stdlib.h&gt; #include &lt;fstream&gt;...

Как можно увеличить размер вектора, который является элементом вектора vector<vector<int>>arr(n, vector <int>) - C++
Написал программу, которая создает вектор 'а' векторов 'b', вектора 'b' содержат 2 числа. Стало интересно, как нужно изменить программу...

Из vector в массив. - C++
Доброго всем утра коллеги! Собственно, есть вектор с шаблоном std::vector&lt;float&gt; vect; и теперь надо каждый из элементов...

6
Crudelis
Шаровик затейник
675 / 417 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
28.02.2011, 17:29 #2
зачем так мучатся то....
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
#include <iostream>
#include <vector>
using namespace std;
 
int main ()
{
    vector<int>ivec1;
    const size_t sz_arr = 10;
    int arr1[sz_arr];
 
    for (int ix=0; ix<sz_arr; ++ix) 
    {
        ivec1.push_back(ix);
        std::cout<<ivec1[ix]<<endl; 
    }
 
    for (int ix2=0; ix2<sz_arr; ++ix2) 
    {
 
        arr1[ix2]=ivec1[ix2]; // kak-to prisvoit' elementu vectora v massiv???
    }
 
    for (int i=0; i<sz_arr; ++i) 
 
    cout<< arr1[i] <<endl; 
 
    system("pause");
    return 0; 
}
1
oxotnik
1591 / 1068 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
28.02.2011, 17:31 #3
std::copy
0
Romiys
3 / 3 / 0
Регистрация: 27.12.2010
Сообщений: 56
28.02.2011, 17:55  [ТС] #4
Crudelis, большое спасибо за толковый и "работающий ответ"! Буду учиться дальше. Можно вопрос? На практике лучше использовать индексирование, чем указатели?
0
Crudelis
Шаровик затейник
675 / 417 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
28.02.2011, 18:21 #5
Romiys, указатели нужны когда к примеру массив передается в функцию в которой нужно что то с массивом сделать, например отсортировать либо заменить элементы, при этом по выходу из функции элементы массива были заменены и в теле функции main(), если сиё не нужно то можно просто использовать индексирование.
1
Romiys
3 / 3 / 0
Регистрация: 27.12.2010
Сообщений: 56
28.02.2011, 18:37  [ТС] #6
Я понял. Спасибо!
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
28.02.2011, 20:53 #7
Для контейнеров STL (vector, list, etc.) лучше использовать итераторы.
0
28.02.2011, 20:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.02.2011, 20:53
Привет! Вот еще темы с ответами:

Почему не заполняется массив vector? - C++
Здравствуйте! Не могу понять, почему не заполняется массив vector.. Он в классе объявлен типа public. #include &lt;iostream&gt; ...

Stl vector как массив - C++
Есть функция принимающая указатель на массив и его длину и копирующая его в другой массив определенный указателем. void SetMass(float...

Скопировать двумерный массив в vector - C++
Добрый день всем. подскажите пожалуйста, как скопировать двумерный массив в vector? int i = {0}; vector&lt;vector&lt;int&gt; &gt; _v; _v = i;...

vector<Struct2{int,vector<struct1>}> или множественное наследование ... - C++
Здравствуйте! Помогите, пожалуйста. Есть такие данные: typedef struct { int x; int y; // координаты...


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

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

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