Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.80
NinGAZ
14 / 14 / 1
Регистрация: 27.07.2011
Сообщений: 162
#1

Указатели и ссылки [С++] - C++

06.01.2012, 23:29. Просмотров 1918. Ответов 9
Метки нет (Все метки)

Всем привет. я тут программу делаю. Цель: определить,принадлежит ли точка заданному промежутку(а точнее лежит внутри или снаружи фигуры). Координаты храню в массивах(по 2 значения: x и y.). Вопрос такой: можно ли создать указатель(или ссылку),который бы хранил область памяти на массив,чтобы потом им можно было манипулировать,как и массивом?
к примеру:
C++
1
2
3
4
int a[2];
int &y= a[2];
&y[0] = 2;
&y[1] = 5; // или что-нибудь подобное...
Можно ли такое реализовать?
Для пущей ясности,скажу зачем. Функция находит наибольшее и наименьшее значения по Х,а потом нужно взять Y по этом Х. Просто парсить или сравнивать результаты не хочется(да и при повторе это очень небезопасно). Как поступить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.01.2012, 23:29
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Указатели и ссылки [С++] (C++):

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

Указатели и ссылки? - C++
Ниже приведёна программы которая вызывает функцию. В функции происходит следующее создаются 2 массива в которые записыватся чётные и...

Указатели и ссылки - C++
Собственно, не могу до конца осознать как это работает, вот пример из вики(комменты входят в пример) int n = 6; // Объявление...

Ссылки и указатели - C++
Добрый день, не могу понять чем помогают при использовании указатели и ссылки? Есть код на c++ #progma once class well { ...

Указатели и ссылки c++ - C++
Здравствуйте! Не могли бы вы объяснить как можно использовать ссылки и указатели c++ на практике? Я не пойму для чего они нужны!

Указатели и ссылки - C++
Экспериментируя с указателями пришел к вот таким выводам: int a; //переменная int *b; //указатель int &c = a //ссылка на <a> ...

9
NoMasters
Псевдослучайный
1906 / 1117 / 77
Регистрация: 13.09.2011
Сообщений: 3,169
06.01.2012, 23:32 #2
Цитата Сообщение от NinGAZ Посмотреть сообщение
Вопрос такой: можно ли создать указатель(или ссылку),который бы хранил область памяти на массив,чтобы потом им можно было манипулировать,как и массивом?
Ещё раз по-русски
0
talis
793 / 545 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
06.01.2012, 23:33 #3
C
1
2
3
4
5
int array[128];
 
int * ptr1 = &(array[14]); // & - взятие адреса array[14]. int * ptr1 - указатель на int, в который этот адрес записывается.
*ptr1 = 14; // * - операция разыменовывания. Запись идёт не в указатель, а по адресу, хранящемуся в указателе.
int c = *ptr; // * - операция разыменовывания. Чтение идёт не из указателя, а по адресу, хранящемуся в указателе.
1
NoMasters
Псевдослучайный
1906 / 1117 / 77
Регистрация: 13.09.2011
Сообщений: 3,169
06.01.2012, 23:34 #4
А, понял.
C
1
int *y= &a[i];
1
NinGAZ
14 / 14 / 1
Регистрация: 27.07.2011
Сообщений: 162
06.01.2012, 23:48  [ТС] #5
NoMasters, указатель что хранит? адрес в памяти. Я не так выразился,косяк.

Добавлено через 33 секунды
talis, а можно сделать указатель на массив полностью? или только одну его ячейку?
0
Dekio
Фрилансер
Эксперт С++
5837 / 1218 / 214
Регистрация: 23.11.2010
Сообщений: 3,377
Записей в блоге: 1
06.01.2012, 23:54 #6
C++
1
2
3
4
int arr[5];
int *p;
p = arr; // p = &arr[0];
p[3] = 4; // *(p+3) = 4; и cтанет arr[3] == 4;
1
greeezz
274 / 167 / 4
Регистрация: 10.07.2011
Сообщений: 441
06.01.2012, 23:57 #7
NinGAZ, имя массива это по сути и есть указатель. Оно (имя) указывает на начало массива в памяти.

Добавлено через 2 минуты
в примере Dekio это как раз хорошо видно. Он создал указать на int которому потом просто присвоил адрес начала массива.
1
NinGAZ
14 / 14 / 1
Регистрация: 27.07.2011
Сообщений: 162
07.01.2012, 00:21  [ТС] #8
Всем спасибо,вроде разобрался,теперь обмозгую полученную информацию и буду действовать)
0
ВалентинАматор
2 / 5 / 0
Регистрация: 25.02.2011
Сообщений: 140
08.01.2012, 11:27 #9
Указатель объявленный на массив указывает на его первый элемент.
1
Evg
Эксперт CАвтор FAQ
18897 / 6854 / 500
Регистрация: 30.03.2009
Сообщений: 19,288
Записей в блоге: 30
08.01.2012, 16:44 #10
Цитата Сообщение от NinGAZ Посмотреть сообщение
talis, а можно сделать указатель на массив полностью? или только одну его ячейку?
Ссылки и указатели
пример N1
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.01.2012, 16:44
Привет! Вот еще темы с ответами:

Ссылки vs Указатели - C++
Почему ссылки считаются более хорошим средством, чем указатели? Ведь если человек будет использовать сторонние классы, он может не...

Указатели и Ссылки - C++
извеняюсь,но никак не могу понять. int sum(int* inLeft, int* inRight) { if(inLeft == inRight) return *inLeft; ...

Указатели и ссылки - C++
Используя вместо самой переменной указатель на нее написать программу в соответствии с заданием: Вычислить y = cos|x3-x2|.

Ссылки, указатели - C++
Доброго времени. Как, используя ссылки, указатели и, возможно, другие приемы сделать что-то вроде этого?: int a = 1; int b = 2; ...


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

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

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