Если возможно выводите без них.
А вам показалось что я шучу?
Без проблем. Можете посмотреть в моих ответах.
Когда человек совершает грубую ошибку и ерепенится при этом это выглядит забавно, по крайней мере.
Выделет размер указателя.А в дальнейшем размер будет увеличеватся с количеством присвоеных елементов.Это значит что mass[9] на девятую переменую.Если не верите проверте.Оперируем мы по сути указателями на все эти переменные.Больше тут нечего сказать.
Это в каком же стандарте такое прописано? Не верю! Давайте Вы сами проверите и выложите тут образец кода на котором проверяли, а я тут уже давно все проверил.
По меньшей мере.
int *mass=new int[10]; // Или сколько у Вас там элементов в index
Я Вам писал конкретные строки из Вашей же программы в которых инициализация указателя проведена не верно. Поэтому о каком начале Вы говорите не ясно. Тем более, что для этих переменных это и есть начало т.к. они и декларированы в этой строке. Индекс будет находиться вне массива и чего он там будет менять никому не известно.
#include <cstdlib>
#include <iostream>
#include <stack>
#include <queue>
using namespace std;
int main(int argc, char *argv[])
{
stack <int> s;
stack <int> ss;
int* mass=new int;
int* mass1=new int;
int index=1000; //razmer stekov
int a;
while(s.size() != index){s.push(a++);}
while(ss.size() != index){ss.push(a++);}
queue <int> o;
for(int i=0;i<index;i++){
mass[i]=s.top(); //при выводе из стека первый елемент всегда стерается.Поетому предварительно елемент заносится в массив и выводится
o.push(s.top());s.pop();
mass1[i]=ss.top(); //тоже самое со вторым стеком
o.push(ss.top());ss.pop();}
cout<<"Soderzimoje pervovo steka "<<endl;
for(int i=0;i<index;i++){
cout<<mass[i]<<" ";}
cout<<"\nSoderzimoje vtorovo steka "<<endl;
for(int i=0;i<index;i++){
cout<<mass1[i]<<" ";}
cout<<"\n\n";
for(int i=0;i<index*2;i++){
cout<<o.front();o.pop(); //выводим содержимое очередь на консоль
cout<<" ";} //в програме мы заранее знаем сколько елементов будет в стеках и в очереди
system("PAUSE"); //естественно что все эти константные числа мы можем сделать переменными.(это мы понимаем)
return EXIT_SUCCESS;
}
Дело не в динамических массивах, а в недостаточном выделении памяти. Если выделить с запасом(new int[10]) то все нормально и освободить после этого надо будет.
Но согласитесь, делать константным размер массива в случае со стеком,
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.