В моем классе структуры данных преподаватель дал нам простой код для печати элементов из массива с циклом. Я объявил массив с 10 элементами, но инициализировал 15 элементов со значением 5, чем печать 15 элементов, зная, что остальные элементы будут отображать значение мусора. Но он выводит только 5 элементов. На самом деле это показывает количество элементов, для которых я инициализирую массив. Я использую кодовые блоки 13.12. благодарит заранее.Добавление большего количества элементов, чем выделенное пространство
#include <iostream>
using namespace std;
int main(){
int i,n;
int arr[10];
n=15;
for(i=0;i<n;i++){
arr[i] = 5;
}
for(i=0;i<n;i++){
cout << arr[i] << endl;
}
return 0;
}
Запись (или чтение для этого мата) вне границ * ничего * приводит к * неопределенному поведению *. Не делай этого. –
Если вы делаете глупые вещи, вы сами по себе. –
О, и если вы не знаете размер массива во время компиляции, используйте ['std :: vector'] (http://en.cppreference.com/w/cpp/container/vector), который позволяет вам устанавливать размер во время выполнения и, конечно, добавлять новые элементы во время выполнения. –