Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
ГузелькаС
5 / 5 / 0
Регистрация: 04.12.2011
Сообщений: 178
#1

Как обратиться к элементам массива через указатель? - C++

13.04.2013, 22:02. Просмотров 1795. Ответов 4
Метки нет (Все метки)

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
31
32
33
34
35
36
37
38
39
40
41
42
// 2 зачет.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
 
using namespace std;
 
int main()
{setlocale ( LC_ALL, "Russian" );
    int n,m; // размер массива
    cout << "Введите размерность массива n: ";
    cin >> n; // получение от пользователя размера массива
    cout <<" m: ";
    cin >>m; // получение от пользователя размера массива
 
     int **mas = new int* [n]; // Выделение памяти для массива
    for (int i = 0; i < n; i++)
    { mas[i]= new int[m];
    }
    
    for (int i = 0; i < n; i++)
    {
        for (int j = 0;j < m; j++)
        // Заполнение массива и вывод значений его элементов
        {cout<<"Введите элемент массива с индексом ["<<i+1<<"]["<<j+1<<"]: ";
        cin>>mas[i][j];}
    }
    
cout << "Mассив: "<<endl;
for (int i = 0; i < n; i++) 
{
    for (int j=0;j<m;j++)
        cout << *(mas)<<"  ";  //вот тут проблемка
    cout<<endl;
}
cout<<endl;
cout<<"Адрес массива: "<<&mas<<endl;
    delete [] mas; // очистка памяти
    system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.04.2013, 22:02     Как обратиться к элементам массива через указатель?
Посмотрите здесь:

Как обратиться к элементам массива через указатель? - C++
Как обратиться к элементам массива через указатель?

Как обратиться через указатель к данным, которые он адресует? - C++
c++ как обратиться через указатель к данным, которые он адресует?

Как обратиться к элементам массива БЕЗ применения индексов - C++
Есть динамический массив А. Поменять местами максимальный элемент главной и побочной диагоналей с элементом, расположенным на пересечении...

Как обратиться к полям структуры через указатель и объявление указателя на структуру - C++
Как обратиться к полям структуры через указатель и объявление указателя на структуру? #include &quot;stdAfx.h&quot; #include &lt;iostream&gt; ...

Обратиться к элементам коллекции через индекс - C++
Есть вектор типа Student. Пытаюсь обратится к элементам каждого студента, однако по индексу почему-то ничего не читает. Вот так ...

Разный доступ к элементам структуры через указатель - C++
Всем добрый вечер! Есть структура и два указателя на структуру. Первый указатель выделяет память для единичного значения а второй для...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
palva
2595 / 1817 / 260
Регистрация: 08.06.2007
Сообщений: 6,964
Записей в блоге: 4
13.04.2013, 22:03     Как обратиться к элементам массива через указатель? #2
C++
1
 cout << *(mas+j)<<"  ";  //вот тут проблемка
ГузелькаС
5 / 5 / 0
Регистрация: 04.12.2011
Сообщений: 178
13.04.2013, 22:07  [ТС]     Как обратиться к элементам массива через указатель? #3
нет. адрес выводится. нужно элементы чтобы выводились
Excogit8er
2 / 2 / 0
Регистрация: 23.10.2012
Сообщений: 66
13.04.2013, 22:49     Как обратиться к элементам массива через указатель? #4
Разыменовывать нужно дважды:
C++
1
cout << *(*(mas+i) + j) <<"  ";
ЗЫ Помимо "очистки памяти", тут ещё и утечка памяти.
Эта строка:
C++
1
delete [] mas; // очистка памяти
удаляет только массив указателей, нужен ещё один цикл, чтобы освободить память, выделенную здесь:
C++
1
2
3
for (int i = 0; i < n; i++)
    { mas[i]= new int[m];
    }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.04.2013, 23:12     Как обратиться к элементам массива через указатель?
Еще ссылки по теме:

Доступ к элементам структуры через указатель на структуру - C++
Как делается доступ к элементам структуры через указатель на структуру. Вроде же через -&gt;но тогда почему тут делается по другому: struct...

Доступ к элементам структуры через указатель на структуру - C++
Не могу понять, где ошибка... В файле информация о двух людях. В конечном итоге заносит в структуру имя и фамилию второго человека, а...

массив классов, задание и обращение к элементам через указатель - C++
Доброе время суток!! Помогите новичку разобраться с классами! Очень надо как всегда:) Задан класс class A { int m; ...

Обращение к элементам массива используя указатель - C++
Необходимо написать программу, выделив под массив динамически память. Обращаться к элементам массива необходимо используя указатель. ...

Найти минимальный элемент массива (через указатели, запрещено обращаться к элементам массива по индексам) - C++
Написать программу, создающую массив из 10 случайных целых чисел из отрезка . Вывести на экран весь массив и на ...

Доступ к элементам массива через указатели - C++
Пишу программу для сортировки массива указателей // сортировка объектов через массив указателей на них #include&lt;iostream&gt; ...


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

Или воспользуйтесь поиском по форуму:
palva
2595 / 1817 / 260
Регистрация: 08.06.2007
Сообщений: 6,964
Записей в блоге: 4
13.04.2013, 23:12     Как обратиться к элементам массива через указатель? #5
Цитата Сообщение от Excogit8er Посмотреть сообщение
Разыменовывать нужно дважды:
Да, точно. Не разобрался, что здесь двойной массив. Тогда можно немного короче
C++
1
cout << mas[i][j] <<"  ";
Yandex
Объявления
13.04.2013, 23:12     Как обратиться к элементам массива через указатель?
Ответ Создать тему
Опции темы

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