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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 05.01.2014, 21:55   #1
Vimork
 
Регистрация: 05.01.2014
Сообщений: 5
По умолчанию Почему выводится такое значение? (Си)

Ребят, объясните пожалуйста, почему на консоль выводится значение переменной "y" равное 1?
Изображения
Тип файла: jpg 456456.jpg (111.2 Кб, 64 просмотров)
Vimork вне форума
Старый 05.01.2014, 21:59   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Потому что твоя функция ничего не возвращает.
нет return. А 1 потому что повезло. Могло вообще NaN какой-нить вывести.
I'm learning to live...
Stilet вне форума
Старый 05.01.2014, 22:01   #3
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,618
По умолчанию

Ну все верно написали.
Мне кажется, ты хочешь получить на экране 2? -
напиши
Код:
int function() { return 2; }
rrrFer вне форума
Старый 05.01.2014, 22:10   #4
Vimork
 
Регистрация: 05.01.2014
Сообщений: 5
По умолчанию

В том то и дело, что я не хочу получить 2-ку. Просто не понятно, по какому алгоритму переменная "y" получила значение "1".
Vimork вне форума
Старый 05.01.2014, 22:19   #5
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,618
По умолчанию

Цитата:
по какому алгоритму переменная "y" получила значение "1".
ни по какому. ИМХО это зависит от конкретной реализации компилятора или яркости протуберанцев на Солнце. Попробуй вместо int возвращать float или float* или string какой-нибудь. ИМХО получишь nan или еще какую-нибудь прикольную ошибку.
rrrFer вне форума
Старый 05.01.2014, 22:29   #6
Vimork
 
Регистрация: 05.01.2014
Сообщений: 5
По умолчанию

То есть, программа написана с ошибкой. Когда мы инициализируем переменную "y" (методом указанном в программе), функция "function" должна была вернуть какое-то значение, по средствам оператора return, именно это значение и присваивается переменной "y". Всё верно?
Vimork вне форума
Старый 05.01.2014, 23:05   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
Всё верно?
Рассуждение верно. По крайней мере смысл ты уловил.
I'm learning to live...
Stilet вне форума
Старый 05.01.2014, 23:40   #8
Vimork
 
Регистрация: 05.01.2014
Сообщений: 5
По умолчанию

Спасибо большое всем за помощь.
Vimork вне форума
Закрытая тема


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему ничего не выводится из файла? Alsou93 Общие вопросы C/C++ 1 27.05.2012 02:17
Delphi 7. Почему на одном компе содержимое Image1.Canvas выводится на принтер, а на другом нет? KarlMarks Помощь студентам 0 11.12.2011 23:01
Почему не выводится сообщение? [MI_nor] Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 8 10.04.2011 21:30