![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 | |
В стагнации
Участник клуба
Регистрация: 29.07.2011
Сообщений: 1,303
|
![]()
Сегодня обнаружил крайне забавную ведь в компиляторе g++ v4.7.3 под Linux.
Есть вот такой код: Код:
Код:
![]() Но как так?! Он не должен работать. Подумал, что он автоматически создает динамический массив, но нет. Код:
Код:
Цитата:
E-mail: pashaworking@gmail.com | ICQ: 479914426 | Skype: moondearr
Понять, чего от тебя требует заказчик – это уже половина всей работы, а иногда и полностью выполненное задание. |
|
![]() |
![]() |
![]() |
#2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Ты имеешь ввиду что без const int компиль создал массичик из n элементов. и это тебя удивило?
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#3 | ||
В стагнации
Участник клуба
Регистрация: 29.07.2011
Сообщений: 1,303
|
![]() Цитата:
В винде, например, компилятор студии выдает это: Цитата:
E-mail: pashaworking@gmail.com | ICQ: 479914426 | Skype: moondearr
Понять, чего от тебя требует заказчик – это уже половина всей работы, а иногда и полностью выполненное задание. |
||
![]() |
![]() |
![]() |
#4 |
crafter
Форумчанин
Регистрация: 03.09.2011
Сообщений: 127
|
![]() |
![]() |
![]() |
![]() |
#5 |
Linux C++ Qt ARM
Старожил
Регистрация: 30.11.2008
Сообщений: 3,030
|
![]()
Ну во-первых, v4.7.3 работает по стандарту C++11 (правда не полностью). Хотя скорее всего это просто особенность этого компилятора, не продиктованная стандартом.
А во-вторых - если учесть, что в начале программы n получает вполне однозначное значение и больше нигде никак не изменяется, компилятор, скорее всего, b вообще выкинул, а n заменил на константу.
Дилетант широкого профиля.
"Слова ничего не стоят - покажите мне код!" © Линус Торвальдс |
![]() |
![]() |
![]() |
#6 | |||
В стагнации
Участник клуба
Регистрация: 29.07.2011
Сообщений: 1,303
|
![]() Цитата:
Цитата:
Код:
Цитата:
E-mail: pashaworking@gmail.com | ICQ: 479914426 | Skype: moondearr
Понять, чего от тебя требует заказчик – это уже половина всей работы, а иногда и полностью выполненное задание. Последний раз редактировалось MooNDeaR; 12.01.2014 в 12:25. |
|||
![]() |
![]() |
![]() |
#7 | |
Linux C++ Qt ARM
Старожил
Регистрация: 30.11.2008
Сообщений: 3,030
|
![]() Цитата:
Дилетант широкого профиля.
"Слова ничего не стоят - покажите мне код!" © Линус Торвальдс |
|
![]() |
![]() |
![]() |
#8 | |
В стагнации
Участник клуба
Регистрация: 29.07.2011
Сообщений: 1,303
|
![]() Цитата:
Код:
E-mail: pashaworking@gmail.com | ICQ: 479914426 | Skype: moondearr
Понять, чего от тебя требует заказчик – это уже половина всей работы, а иногда и полностью выполненное задание. |
|
![]() |
![]() |
![]() |
#9 |
Linux C++ Qt ARM
Старожил
Регистрация: 30.11.2008
Сообщений: 3,030
|
![]()
Хм... а вот тут... у меня даже допотопный borland C++ builder 3.11 позволял в "других" функциях задавать размер "статичного" массива параметрами, передаваемыми функции. Надо смотреть что компилятор на самом деле делает.
Дилетант широкого профиля.
"Слова ничего не стоят - покажите мне код!" © Линус Торвальдс |
![]() |
![]() |
![]() |
#10 |
C++ hater
Старожил
Регистрация: 19.07.2009
Сообщений: 3,333
|
![]()
2MooNDeaR
массивы переменной длины в крестах - это расширение гсс (во всяком случае до стандарта с++03). чтобы компилять стандартом с++98 и игнорировать все расширения нужно писать так: g++ -std=c++98 -pedantic-errors main.cpp
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
странное поведение компилятора | Kukurudza | Общие вопросы C/C++ | 10 | 23.09.2011 08:22 |
Странное поведение realloc | eraserhp | Помощь студентам | 0 | 15.05.2010 18:06 |
Странное поведение gets | alex_alpha | Общие вопросы C/C++ | 3 | 27.03.2010 18:21 |
Странное поведение процедуры | Sergey1974 | Общие вопросы Delphi | 2 | 11.12.2009 21:41 |