Хорошо известно, что компилятор Microsoft Visual Studio не поддерживает C99, и похоже, что нет планов до поддерживает его.
Однако компилятор включает в себя некоторые вишневые элементы, такие как переменные макросы и long long
- см. цитаты в этом ответе:
В тех случаях, когда мы получили множество запросов для некоторых функций C99, мы пытались их реализовать (или аналоги). Пара примеров - это переменные макросы,
long long
,__pragma
,__FUNCTION__
и__restrict
. Если есть другие функции C99, которые вы найдете полезными в своей работе, сообщите нам об этом! Мы не слышим много от наших пользователей C, поэтому говорите и слушайте себя.- Арджун Бийанки, представитель Microsoft в стандартном комитете ISO C http://blogs.msdn.com/b/vcblog/archive/2007/11/05/iso-c-standard-update.aspx
Кроме того, более новые версии Visual Studio, похоже, поставляются с некоторыми заголовками, требуемыми C99.
Есть много вопросов об определенных функциях, но я не хочу знать: Где я могу найти список функций C99, поддерживаемых/предоставленных текущим компилятором MSVC?
Я ищу список как этот для gcc.