powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Простой вопрос по указателям
7 сообщений из 7, страница 1 из 1
Простой вопрос по указателям
    #38002148
MaximuS_G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!
У меня есть такой код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
const int array_size = 3;
			int my_array1[array_size] = {1,2,3};
			int my_array2[array_size] = {1,5,1};
			int my_array3[20] = {0};

			join_elements(&array_container, &array_1, &array_2);
			
			cout<<"Вывод массива всех объеденных элементов\n";
			for (int i=0; i<20; i++)
				cout<<my_array3[i]<<"\n";

			system("Pause");
		}
	}
}

void join_elements(int &array_container, int &array_1, int &array_2)
{
	for (int i=0,j=0;i<20;i+=2,j++)
	{
		*(&array_container+i) = *(&array_1+j);
		*(&array_container+i+1) = *(&array_2+j);
	}
}


У меня подсвечивается вот эта часть:
Код: plaintext
1.
join_elements(&my_array3, &my_array1, &my_array2);


Возле знаков & подчеркивает и пишет Error: initial value of reference to non-const must have an lvalue.
Подскажите, что нет так? Я уже пробовал создавать новые указатели int * new_pointer = my_array1 и пробовать передавать их - та же ошибка. ,
Заранее спасибо!
...
Рейтинг: 0 / 0
Простой вопрос по указателям
    #38002201
Abstraction
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaximuS_G,

Как по-Вашему, чем отличаются эти прототипы:
Код: plaintext
1.
2.
void func(int& arg);
void func(int* arg);
...
Рейтинг: 0 / 0
Простой вопрос по указателям
    #38002211
MaximuS_G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Abstraction, спасибо что присоединились!
Как по-Вашему, чем отличаются эти прототипы:
void func(int& arg);
void func(int* arg);
В первом случае функция ожидает указатель, то есть адрес ячейки arg.
Во втором ожидается значение ячейки, на которую указывает указатель arg.
? :)
...
Рейтинг: 0 / 0
Простой вопрос по указателям
    #38002228
Abstraction
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaximuS_GAbstraction, спасибо что присоединились!
Как по-Вашему, чем отличаются эти прототипы:
void func(int& arg);
void func(int* arg);
В первом случае функция ожидает указатель, то есть адрес ячейки arg.
Во втором ожидается значение ячейки, на которую указывает указатель arg.
? :)Не-а. Рекомендую произвольный учебник синтаксиса C++.
Код: plaintext
1.
2.
3.
4.
void func(int* a, int& b, int c);
//...
int A, B, C;
func(&A, B, C); //A и B изменены, C - нет
...
Рейтинг: 0 / 0
Простой вопрос по указателям
    #38002237
m_Sla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaximuS_G, про void func(int& arg); см. "Передача аргументов по значению" и "Передача аргументов по ссылке" например тут http://shatalov.su/ru/articles/cpp_primer/function.php
Там же есть пример передачи массива.
...
Рейтинг: 0 / 0
Простой вопрос по указателям
    #38002606
MaximuS_G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m_SlaТам же есть пример передачи массива.
Как передовать массив я вроде бы знаю :). Вот так передать массив я могу без проблем
Код: plaintext
1.
2.
join_elements(my_array1, my_array1, my_array2);
void join_elements(int array_container[], int array_1[], int array_2[])



Нам рассказывали, что массив создается как указатель и ячейки. Типа my_array1 это указатель на первый элемент массива. Вот я и хотел его как-то передать :)
...
Рейтинг: 0 / 0
Простой вопрос по указателям
    #38002610
MaximuS_G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AbstractionНе-а. Рекомендую произвольный учебник синтаксиса C++.
Ок, спс :)
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Простой вопрос по указателям
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]