![]() |
|
Модераторы: bsa |
![]()
|
|
| GQU |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 13.2.2011 Репутация: нет Всего: нет |
Почему в одном случае warning, в другом норм??
и
Это сообщение отредактировал(а) GQU - 15.8.2014, 13:53 |
||||
|
|||||
| SVN74 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 5.5.2008 Где: Комсомольск на Дн епре Репутация: 1 Всего: 18 |
Немного подправил...
|
|||
|
||||
| tzirechnoy |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1173 Регистрация: 30.1.2009 Репутация: -1 Всего: 16 |
Видимо, компилятор в одном случае догадывается, что ты делаешь херню, а в другом -- ты успешно её замаскировал и он не догадывается.
PS Читать warning не пробовал? Для развлечения там, например. |
|||
|
||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 15 Всего: 101 |
GQU, вроде бы совсем недавно обсуждали: адрес локальной переменной возвращать нельзя.
Добавлено через 4 минуты и 10 секунд SVN74, зачем запостил то что не компилируецца (((( |
|||
|
||||
| tzirechnoy |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1173 Регистрация: 30.1.2009 Репутация: -1 Всего: 16 |
baldina, не то чтобы возвращать нельзя (вон -- вернул жэ), просто обращение к нему не будет обращаться к этой локальной переменной
|
|||
|
||||
| GQU |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 13.2.2011 Репутация: нет Всего: нет |
я в курсе,что нельзя, поэтому в комментах и написал, что специально возвращаю адрес, просто мне интересно, почему в одном случае warning, в другом норм(хотя в обоих случаях возвращаем адрес), я обращаю на это внимание, потому что, компиляторы делают тоже не дураки, может там какая нить фишка, какой нить хитрый момент Это сообщение отредактировал(а) GQU - 16.8.2014, 21:14 |
|||
|
||||
| SVN74 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 5.5.2008 Где: Комсомольск на Дн епре Репутация: 1 Всего: 18 |
||||
|
||||
| baldina |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 15 Всего: 101 |
в режиме "С"? Добавлено через 6 минут и 1 секунду GQU, хитрых моментов нет, т.к. не запрещено. прост в каких-то случаях компилятор может сообразить, что указатель - адрес локальной переменной, и предупредить, а в каких то нет. вообще приведенный пример, мягко говоря странный. если нужно обменять два значения, передавать нужно по указателю, т.к. переменные переданные по значению модифицировать никак нельзя. такая функция видимо не должна вообще иметь возвращаемого значения. ну уж если сильно хочется именно так, то
или
|
||||
|
|||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |