Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
0 / 0 / 0
Регистрация: 20.04.2013
Сообщений: 20
1

Использование указателей для доступа к элементам массива

05.06.2013, 18:31. Показов 2547. Ответов 2
Метки нет (Все метки)

Помогите пожалуйста написать программу с подробным обьяснением:. Использование указателей для доступа к элементам массива

1. Описать одномерный массив arr из 5 элементов типа int.
2. Вывести на экран в виде arr=...значение arr (какого оно типа?), и в цикле поочередно адреса всех элементов массива. Адрес каждого элемента выводим с новой строки в виде &arr[...]= ... Проанализировать результаты.
3. Используя для доступа к элементам массива адресную арифметику (а не квадратные скобки) в цикле присвоить элементам массива последовательно значения от 1 до 5.
4. Присвоить arr адрес среднего (третьего по счету) элемента массива. Что происходит при компиляции программы и как это можно объяснить? Строку закомментировать.
5. Добавить в программу указатель pArr на тип int. Присвоить указателю pArr адрес среднего элемента массива.
6. Рассматривая pArr как указатель на массив, вывести значения всех элементов. В каких пределах должен изменяться индекс у "массива" pArr?
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.06.2013, 18:31
Ответы с готовыми решениями:

Использование #define для доступа к элементам класса
Добрый день. Имеется класс вида: class Test { int key; int smth; } И я хочу сделать...

Напишите цикл for для доступа к элементам массива в обратном порядке
Правильно ли? #include <iostream> using namespace std; int main() { int size; cout...

Использование умных указателей для массива символов
В проекте много похожего кода, но delete не использую, потому как в рандомный момент вылазят...

Записать синтаксис объявления и определения свойства класса для доступа к элементам двухмерного массива данны
Записать синтаксис объявления и определения свойства класса для доступа к элементам двухмерного...

2
7 / 5 / 5
Регистрация: 24.03.2013
Сообщений: 40
05.06.2013, 19:05 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
30
#include <iostream>
#include <conio.h>
using namespace std;
 
int main()
{
    int arr[5] = {5, 4, 3, 2, 1};
 
    for(int i = 0; i < 5; ++i)
    cout << "arr= " << arr[i] << endl; //тип int.
    
    for(int i = 0; i < 5; ++i)
    cout << "&arr[" << i << "]=" << &arr[i] << endl; //интервал адресов = 4, что соответсвует размеру резервируемое памятью под переменную типа int (4 байта).
 
    for(int i = 0; i < 5; ++i)
    *(arr + i) = i + 1;
    
    for(int i = 0; i < 5; ++i)
    cout << "arr= " << arr[i] << endl;
 
    //(arr+0) = (arr + 2);  //Происходит ошибка.
 
    int* pArr;
 
    pArr = (arr + 2);
    for(int i = 0; i < 2; ++i)
        cout << "*pArr= " << *(pArr + i) << endl; //дальше лучше не идти, потому что следующие ячейки памяти могут содержать какие угодно данные, возможно даже те, на которые у нас не будет прав доступа.
 
    getch();
}
1
anmartex
05.06.2013, 19:15     Использование указателей для доступа к элементам массива
  #3

Не по теме:

VaJI, данная ветка форума посвящена языку C, а не C++.

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.06.2013, 19:15
Привет! Вот еще темы с ответами:

Обращение к элементам массива посредством указателей
#define _CRT_SECURE_NO_WARNINGS #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;locale.h&gt;...

Как присвоить элементам массива указателей строки
Здравствуйте. Есть ф-ия: char* initialize_m(const int&amp; iM, const int&amp; iSM) { const char*...

Как производить все обращения к элементам массива с использвованием указателей?
#include &lt;time.h&gt; #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt;...

Как производить все обращения к элементам массива с использованием указателей?
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;ctime&gt; #include...


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

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

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