Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int *foo; //создается указатель foo типа int, который будет хранить адрес 0 ячейки динамического массива, который мы создадим позже. Мы будем его использовать для записи значений и работы со значениями динамического массива.
- Вообще, так создавать указатель нежелательно (в той книге прочитал).
- Но ведь даже если написать int *foo = new int , это будет также небезопасно, потому что память, выделенная оператором new для встроенных типов, не инициализируется?
- /////////////////////////////////////////////////////////////////////////////////
- foo = new int[5]; // указателю присваивается адрес выделенного участка динамической памяти для хранения целых чисел (int) размером 5, который мы создали с помощью оператора new. Значением указателя является адрес первого байта выделенной памяти.
- for (int i = 0; i < 5; i++) { //заполняю массив . *(foo+i) - так с помощью указателя мы передвигаемся по ячейкам памяти динамического массива, начиная с 0 элемента. Т.е, если i = 0, то *(foo+0) ведет на 0 элемент, если i = 1, то *(foo+1) ведет на 1 элемент и т.д.
- *(foo+i) = rand(); // заполняю рандом числами
- }
- for (int i = 0; i < 5; i++) { //вывожу массив
- cout << *(foo + i) << " ";
- }
- return 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement