powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Почему в MSVC не компилируется код с динамическими массивами?
14 сообщений из 14, страница 1 из 1
Почему в MSVC не компилируется код с динамическими массивами?
    #39397100
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
	int n = 10;
 	int d[n]; 



В MinGW - работает
В VS2015 - нет, expression must have a constant value

Вроде оба компилятора C99 поддерживают. Почему так?
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397131
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ограничение либо режим компилятора....
Ищи на MSDN
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397143
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В MinGW можно указать в настройках, что хочу использовать C99 и все работает.
Про MSVC 2015 пишут что там поддержка нового стандарта включена по-умолчанию, и никаких настроек касательно стандарта нет.
И не работает в итоге.
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397361
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eolt,

Я поглядел на этот счёт в MSDN и интернетах.
Одним словом -- всё печально, не хочет MS поддерживать C99.
(ту часть, что на уровне языка, а не библиотеки).
Пишут, что у их пользователей нет таких потребностей.

Ну, я их понимаю... В общем, новшества C99 мало кому нужны.
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397563
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MS поддерживает alloca()
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397569
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eolt
Код: plaintext
1.
2.
	int n = 10;
 	int d[n]; 



В MinGW - работает
В VS2015 - нет, expression must have a constant value

Вроде оба компилятора C99 поддерживают. Почему так?
Непонятно зачем вообще это безобразие ввели в стандарт? Очень опасная штука. Стэк всего 1 Мб и уехать за его границу элементарно с такими фичами.
Используй лучше вектор.
Код: plaintext
1.
2.
	int n = 10;
 	std::vector<int> d(n); 
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397570
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivEolt,

Я поглядел на этот счёт в MSDN и интернетах.
Одним словом -- всё печально, не хочет MS поддерживать C99.
(ту часть, что на уровне языка, а не библиотеки).
Пишут, что у их пользователей нет таких потребностей.

Ну, я их понимаю... В общем, новшества C99 мало кому нужны.

Это плохо. Уже С11 давно поддерживается большинством компиляторов, а они С99 не могут сделать.
А я уже надеялся генерики использовать..
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397572
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

Какой vector в C?
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397573
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EoltЭто плохо. Уже С11 давно поддерживается большинством компиляторов, а они С99 не могут сделать.
А я уже надеялся генерики использовать..
Не путай С++11 и С99. MSVC2015 поддерживает даже С++14.
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397574
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EoltDima T,

Какой vector в C?
какая разница С или С++ в разработке под виндовс?
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397578
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TEoltDima T,

Какой vector в C?
какая разница С или С++ в разработке под виндовс?

Большая. У меня проект на С, чтобы потом его можно было перенести на другую платформу. Например на ARM Cortex.
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397583
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EoltDima Tпропущено...

какая разница С или С++ в разработке под виндовс?

Большая. У меня проект на С, чтобы потом его можно было перенести на другую платформу. Например на ARM Cortex.
Ну так не используй эти грабли, когда сглючит - устанешь искать причину в своем Cortex`е.
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397697
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TEolt
Код: plaintext
1.
2.
	int n = 10;
 	int d[n]; 



В MinGW - работает
В VS2015 - нет, expression must have a constant value

Вроде оба компилятора C99 поддерживают. Почему так?
Непонятно зачем вообще это безобразие ввели в стандарт? Очень опасная штука. Стэк всего 1 Мб и уехать за его границу элементарно с такими фичами.
Используй лучше вектор.
Код: plaintext
1.
2.
	int n = 10;
 	std::vector<int> d(n); 



Полностью согласен, выделение на стеке подобным образом мне совсем не нравится. Если автору нужен чистый Си, пусть использует malloc().
...
Рейтинг: 0 / 0
Почему в MSVC не компилируется код с динамическими массивами?
    #39397994
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EoltMasterZivEolt,

Я поглядел на этот счёт в MSDN и интернетах.
Одним словом -- всё печально, не хочет MS поддерживать C99.
(ту часть, что на уровне языка, а не библиотеки).
Пишут, что у их пользователей нет таких потребностей.

Ну, я их понимаю... В общем, новшества C99 мало кому нужны.

Это плохо. Уже С11 давно поддерживается большинством компиляторов, а они С99 не могут сделать.
А я уже надеялся генерики использовать..

Как раз в этом и проблема, что поддерживается С++11.
Микрософтовцы пишут в блогах, что С++11 у них был в приоритете, и все силы были
брошены на его поддержку, а теперь на поддержку приближающегося C++17.

А на С99, на который у них особого спроса нет (нет запроса кастомеров, что им это нужно),
они особенно ресурсов не выделяли.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Почему в MSVC не компилируется код с динамическими массивами?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]