Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.07.2017, 21:32   #1
Кот Баюн
Пользователь
 
Регистрация: 05.07.2017
Сообщений: 14
По умолчанию Нужна помощь.Не получается вернуть ссылку из функции.

Всем привет!В общем решаю вот такую задачку:
*********************************** ********************
Модифицируйте ссылочную версию функции swap (), чтобы она, помимо
обмена значениями двух своих аргументов, возвращала ссылку на мень-
ший из них. Назовите эту функцию min_swap ().
*********************************** **********************
И что-то не получается с возвратом минимального значения.Подскажите в чём ошибка.
Изображения
Тип файла: jpg Снимок9-.jpg (77.0 Кб, 120 просмотров)
Кот Баюн вне форума Ответить с цитированием
Старый 19.07.2017, 21:44   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

У вас нет переменной с таким именем в этой области видимости.

И не надо выкладывать код картинкой.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 19.07.2017, 21:53   #3
Кот Баюн
Пользователь
 
Регистрация: 05.07.2017
Сообщений: 14
По умолчанию

А как это исправить можно?Проинициализировать как-то?


Вот код без картинки.


Код:
#include <iostream>
#include <math.h>
#include <conio.h>
using namespace std;
int &min_swap(int x, int y, int mun);

int main()
{
int min;
int i, j;
i = 10;
j = 20;
  cout << i << ' ' << j <<'\n';
     min_swap(j, i, min);
  cout << " posle ";
  cout << i << ' ' << j << '\n';
getch();
return 0;
}

  int &min_swap(int x, int y, int mun)
{
int temp;
 temp = x;
x = y;
y = temp;
 if (x<y)
{x=min;
return min;
}
else
{
 y=min;
return min;
}
}
______________________
Используйте тег [CODE] (кнопка с решеткой # в форме сообщения) при вставке кода на форум.

Последний раз редактировалось Alex11223; 19.07.2017 в 22:04.
Кот Баюн вне форума Ответить с цитированием
Старый 19.07.2017, 22:03   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Почитать про переменные и их области видимости.

https://ru.wikipedia.org/wiki/%D0%9E...B5.D1.80.D1.8B
http://mycpp.ru/cpp/book/c08.html
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 19.07.2017 в 22:21.
Alex11223 вне форума Ответить с цитированием
Старый 20.07.2017, 00:57   #5
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Вот у Вас написано
Код:
int &min_swap(int x, int y, int mun)
1) Что такое mun?
2) Как Вы будете обменивать переменные, переданные по значению?
Black Fregat вне форума Ответить с цитированием
Старый 20.07.2017, 14:20   #6
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Не до конца уверен на счёт возвращаемого значения... но, что касается обмена локальных переменных, то он производиться по прямой ссылке (из функции):

Новый точечный рисунок.jpg

Последний раз редактировалось ura_111; 20.07.2017 в 14:23.
ura_111 вне форума Ответить с цитированием
Старый 21.07.2017, 12:57   #7
Кот Баюн
Пользователь
 
Регистрация: 05.07.2017
Сообщений: 14
По умолчанию

Спасибо!Не очень понял эту тему,пойду почитаю ещё.
Кот Баюн вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь - ссылку на официальный дистрибутив по VS express 2010, причем ОБЯЗАТЕЛЬНО на английскую версию Qodd Софт 1 25.04.2016 00:17
Нужна помощь с заданием на рекурсию. Не получается выполнить. kipairs Паскаль, Turbo Pascal, PascalABC.NET 1 08.12.2015 18:22
Вернуть ссылку на функцию. Impuls1989 Общие вопросы C/C++ 2 16.02.2010 00:45
C++ Функции! Нужна помощь! Faceless001 Помощь студентам 2 29.05.2009 16:51