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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 13.11.2013, 07:50   #1
danil123
Пользователь
 
Регистрация: 06.07.2012
Сообщений: 80
По умолчанию Сохранение значения переменной при выходе из функции с++

....
int a(int x, int y);
int b(int x);
int x=0;

a(b(x),x);

как сделать, чтобы после выполнения b(x) переменная x менялась, и вторым параметром в а шла уже измененная переменная? Я пробовал, x вторым параметром равен нулю, хотя в a(x) я переменную изменял.
danil123 вне форума
Старый 13.11.2013, 08:26   #2
SaLoKiN
Форумчанин
 
Аватар для SaLoKiN
 
Регистрация: 19.09.2013
Сообщений: 597
По умолчанию

где сами функции?
Сделал сам, помоги другому!
Что-то работает не так? Дебаггер в помощь!!!
SaLoKiN вне форума
Старый 13.11.2013, 08:56   #3
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Вроде бы порядок вычисления аргументов не определен. Поэтому надеяться, что b(x) будет вычислена первой, нельзя.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 13.11.2013 в 09:26.
BDA на форуме
Старый 13.11.2013, 09:13   #4
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Цитата:
Сообщение от danil123 Посмотреть сообщение
....
int a(int x, int y);
int b(int x);
int x=0;

a(b(x),x);

как сделать, чтобы после выполнения b(x) переменная x менялась, и вторым параметром в а шла уже измененная переменная? Я пробовал, x вторым параметром равен нулю, хотя в a(x) я переменную изменял.
x = b(x);
a(x, x);
Кстати, порядок вычисления аргументов не гарантируется, так что с чего вы решили, что сначала вызовется b(x)...
waleri вне форума
Старый 13.11.2013, 09:32   #5
SaLoKiN
Форумчанин
 
Аватар для SaLoKiN
 
Регистрация: 19.09.2013
Сообщений: 597
По умолчанию

a(x, x);
вызовется с одним и тем же значением.
а ТС как я понимаю нужен вызов с разными х
что-то вроде этого:
x1 = b(x);
a(x1, x);
Сделал сам, помоги другому!
Что-то работает не так? Дебаггер в помощь!!!
SaLoKiN вне форума
Старый 13.11.2013, 10:41   #6
Baburek
Форумчанин
 
Аватар для Baburek
 
Регистрация: 12.12.2010
Сообщений: 205
По умолчанию

Немного функция a() непонятна. Вы хотите, чтобы в b(x) значение х было старое, а значение x рядом - новое?

Последний раз редактировалось Baburek; 13.11.2013 в 10:48.
Baburek вне форума
Старый 13.11.2013, 10:48   #7
SaLoKiN
Форумчанин
 
Аватар для SaLoKiN
 
Регистрация: 19.09.2013
Сообщений: 597
По умолчанию

Цитата:
А что нам мешает в функции b() вызывать функцию a()? Перед окончанием работы функции
т.е. в самой а() вызвать б()?
типа
int a (int x)
{
бла...бла...

b(x)?
}
Сделал сам, помоги другому!
Что-то работает не так? Дебаггер в помощь!!!
SaLoKiN вне форума
Старый 13.11.2013, 11:08   #8
danil123
Пользователь
 
Регистрация: 06.07.2012
Сообщений: 80
По умолчанию

Исходя из пошагового выполнения в VS, сначала выполняется b(x)
danil123 вне форума
Старый 13.11.2013, 11:08   #9
Baburek
Форумчанин
 
Аватар для Baburek
 
Регистрация: 12.12.2010
Сообщений: 205
По умолчанию

Цитата:
Сообщение от SaLoKiN Посмотреть сообщение
т.е. в самой а() вызвать б()?
типа
int a (int x)
{
бла...бла...

b(x)?
}
Я неправильно первый пост сначала прочитал) Так не прокатит, ибо x уже нужен новый.

Думал как-то так:
Код:
int b(int x)
{
...
здесь поменяли уже свой х как хотим
int this = нашли то, что хотели от b(x)
...
a(this, x);

}

Последний раз редактировалось Baburek; 13.11.2013 в 11:16.
Baburek вне форума
Старый 13.11.2013, 11:11   #10
danil123
Пользователь
 
Регистрация: 06.07.2012
Сообщений: 80
По умолчанию

Цитата:
Сообщение от SaLoKiN Посмотреть сообщение
т.е. в самой а() вызвать б()?
типа
int a (int x)
{
бла...бла...

b(x)?
}
В принципе так наверное будет нормально, но мне бы хотелось нее переделывать, а понять, как осуществить мой вариант
danil123 вне форума
Закрытая тема


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сохранение состояние Button - а при выходе из программы! JunioR_BK Помощь студентам 3 16.07.2012 20:46
Сохранение при выходе Афанасий[vedma] Общие вопросы Delphi 2 09.07.2012 08:29
Obj-C iPhone сохранение состояния приложения при выходе и загрузка при входе krugolet Помощь студентам 0 22.05.2012 20:13
СИ. Каково значение переменной на выходе? шыч Общие вопросы C/C++ 3 18.01.2012 14:19
Не удаётся изменить переменную в ДЛЛ. Пошагово, она меняется. А при выходе из функции обратно TwiX Общие вопросы Delphi 6 23.05.2010 11:48