![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 14.04.2009
Сообщений: 16
|
![]()
Проблема изложена в сабже: Visual C++ (версия 6.0) не компилирует то, что Dev C++ компилит без проблем.
Код:
|
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 16.04.2009
Сообщений: 247
|
![]()
Такое не откомпилит и g++(Dev C++ - это IDE). Где закрывающая фигурная скобка?
А, еще, массивы переменной длины в C++ не поддерживаются, а в "новом" стандарте C - C99 - поддерживаются. Так то. Последний раз редактировалось megachuhancer; 29.09.2009 в 16:28. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 14.04.2009
Сообщений: 16
|
![]()
Да закрывающая фигурная скобка есть. Просто после этого места идёт ещё килобайт пять кода. Написал только до проблемного места.
Как же мне тогда инициализировать массив in размером inSize ? |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 16.04.2009
Сообщений: 247
|
![]()
Если пишешь на C++ - никак. C++ массивы переменной длины не поддерживает. Размером может быть только константа(причём такая, которую можно вычислить на этапе компиляции).
В смысле память можно выделить - динамически. С помощью malloc или new. Последний раз редактировалось megachuhancer; 29.09.2009 в 16:37. |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 14.04.2009
Сообщений: 16
|
![]()
Большое спасибо. Почему же тогда компилятор в Dev C++ (который гордо называется default compiler, поэтому не могу привести названия) запросто скушал такой код?
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 16.04.2009
Сообщений: 247
|
![]()
И вправду. Сейчас попробовал. Совсем я отстал от жизни...
![]() Почему не поддерживает, спросите в Microsoft. Dev C++ - IDE. Компилятор там g++(и не только). Последний раз редактировалось megachuhancer; 29.09.2009 в 16:59. |
![]() |
![]() |
![]() |
#7 | |
Подтвердите свой е-майл
Регистрация: 27.07.2009
Сообщений: 437
|
![]()
Cookson
Цитата:
Код:
Последний раз редактировалось jojahti; 29.09.2009 в 21:08. |
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 16.04.2009
Сообщений: 247
|
![]()
Напишу, может кому будет интересно. "Соответствует стандарту" на деле оказалось означает всего лишь "не противоречит стандарту". Поддержка массивов переменной длины в g++ - это расширение, по сути фича. Другие компиляторы вовсе не обязаны поддерживать её.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ругается в модуле! Как быть? | Golovastik | Общие вопросы Delphi | 21 | 14.07.2009 21:26 |
Компилятор не компилирует!((( | Тимс | Общие вопросы по Java, Java SE, Kotlin | 10 | 11.06.2009 18:35 |
Devcpp-4.9.9.2 не компилирует. | MacTiger | Общие вопросы C/C++ | 6 | 20.04.2009 22:15 |
Каким образом Delphi компилирует EXE? | Jupiter | Общие вопросы Delphi | 4 | 26.03.2008 16:52 |
Ругается компилятор | JSM | Общие вопросы Delphi | 2 | 17.06.2007 23:04 |