|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.12.2015, 19:07 | #1 |
Регистрация: 22.11.2015
Сообщений: 8
|
не могу найти ошибку в программе на C++: не работает функция вывода
почему не работает функция вывода? помогите найти ошибку, что не так
Код:
Последний раз редактировалось Stilet; 16.12.2015 в 19:22. |
16.12.2015, 19:24 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А что именно в ней не работает?
I'm learning to live...
|
16.12.2015, 19:41 | #3 |
Регистрация: 22.11.2015
Сообщений: 8
|
void output не работает, почему то сразу вылетает из цикла for
|
16.12.2015, 20:18 | #4 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,309
|
А если посмотреть на значение переменной n?
У вас она (n) определена, но не инициирована. Код:
Код:
Как-то так, ...
Как-то так, ...
|
16.12.2015, 20:26 | #5 |
Регистрация: 22.11.2015
Сообщений: 8
|
здесь же n инициализована вроде
cout << "continue input? (j/n)" << endl; answer_richt = getch(); i++; } while (answer_richt != 'n'); n = i; |
16.12.2015, 20:37 | #6 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,309
|
А вот и нет!
У Вас n определена в процедуре Код:
Переменная, описанная в программе размещается в области данных, а переменная описанная в п/п - в области стека. Это совершенно разные переменные, хотя и с одним именем. Так что та n, про которую написал я, не инициализирована. Перечитайте тему "Локальные и глобальные переменные". Как-то так, ...
Как-то так, ...
|
16.12.2015, 22:27 | #7 |
Регистрация: 22.11.2015
Сообщений: 8
|
и как же мне это исправить?
|
17.12.2015, 15:09 | #8 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,309
|
Есть два пути.
1. Объявить переменную глобально, перед процедурой input(), а в теле процедуры input() объявление переменной n убрать. 2. При описании процедуры input() использовать параметр и через него вернуть в программу то значение, которое n получила. В общем случае предпочтительнее вариант передачи значений через параметры. Объявление глобальных переменных - это для другого уровня проектов. Впрочем, о параметрах и способах передачи данных в процедуру/функцию лучше внимательно перечитать. Как-то так, ...
Как-то так, ...
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Не могу найти в программе ошибку | Ween24 | Помощь студентам | 13 | 27.10.2015 22:01 |
Ошибку не могу найти в программе | Веселина | Паскаль, Turbo Pascal, PascalABC.NET | 7 | 26.05.2011 20:44 |
Не могу найти ошибку в программе | lioshenka | Общие вопросы C/C++ | 5 | 24.08.2009 11:38 |
Не могу найти ошибку в программе | Dawystrik | Общие вопросы Delphi | 9 | 19.03.2009 21:19 |