Включение C99 и C11 в GCC: как использовать параметры -std=c99 и -std=gnu99

Убунту 18

GCC, коллекция компиляторов GNU, представляет собой мощный инструмент, поддерживающий несколько языков, включая C. Он широко используется для разработки программных приложений. По мере развития языка C вводятся новые стандарты для улучшения его функциональности и возможностей. Двумя такими стандартами являются C99 и C11. В этой статье мы обсудим, как включить эти стандарты в GCC, используя параметры -std=c99 и -std=gnu99.

Чтобы включить C99 в GCC, используйте опцию -std=c99. Для C11 используйте опцию -std=c11. Чтобы включить C99 с расширениями GNU, используйте опцию -std=gnu99.

Понимание стандартов C

Прежде чем мы углубимся в особенности включения C99 и C11, важно понять, что это за стандарты. C99 и C11 — это версии стандарта языка программирования C, определенного Международной организацией по стандартизации (ISO).

C99, выпущенный в 1999 году, представил несколько новых функций, включая встроенные функции, массивы переменной длины и новые типы данных, такие как long long int.

C11, выпущенный в 2011 году, еще больше усовершенствовал язык такими функциями, как поддержка многопоточности, статические утверждения и анонимные структуры.

Включение C99 в GCC

Чтобы включить C99 в GCC, вы используете опцию -std=c99. Эта опция указывает компилятору GCC разрешить все функции и поведение, определенные стандартом C99. Вот как вы можете использовать эту опцию:

gcc -std=c99 имя_файла.c

В приведенной выше команде gcc — это компилятор, -std=c99 — опция, устанавливающая стандарт языка C99, а имя_файла.c — исходный файл, который вы хотите скомпилировать. Когда вы запускаете эту команду, GCC компилирует исходный файл в соответствии со стандартом C99. Если исходный код совместим с C99 и нет других ошибок, GCC создаст двоичный файл с именем a.out.

Включение C11 в GCC

Включение C11 в GCC аналогично включению C99. Единственное отличие состоит в том, что вы используете опцию -std=c11 вместо -std=c99. Вот как вы можете включить C11:

gcc -std=c11 имя_файла.c

В этой команде -std=c11 устанавливает стандарт языка C11. GCC скомпилирует исходный файл в соответствии со стандартом C11. Если исходный код совместим с C11 и нет других ошибок, GCC создаст двоичный файл с именем a.out.

Понимание опции gnu99

Помимо -std=c99 и -std=c11, GCC также предоставляет параметр -std=gnu99. Эта опция включает стандарт C99 вместе с расширениями, специфичными для GNU. Эти расширения предоставляют дополнительные функции и возможности, но не могут быть перенесены на другие компиляторы, кроме GCC.

Вот как вы можете использовать эту опцию:

gcc -std=gnu99 имя_файла.c

В этой команде -std=gnu99 устанавливает стандарт языка GNU99, который по сути представляет собой C99 плюс расширения GNU.

Проверка версии GCC

Прежде чем использовать эти параметры, убедитесь, что ваша версия GCC поддерживает нужный стандарт. Вы можете проверить версию GCC, выполнив следующую команду:

gcc –версия

Заключение

Включение определенных стандартов C в GCC помогает вам писать более эффективный и действенный код за счет использования функций и улучшений, предоставляемых этими стандартами. Независимо от того, используете ли вы C99, C11 или GNU99, GCC предоставляет гибкость в выборе стандарта, который лучше всего соответствует вашим потребностям.

Не забудьте заменить filename.c фактическим именем вашего исходного файла C при компиляции. Приятного кодирования!

C99 и C11 — версии стандарта языка программирования C. C99 был выпущен в 1999 году и представил новые функции, такие как встроенные функции, массивы переменной длины и новые типы данных. C11, выпущенный в 2011 году, еще больше усовершенствовал язык такими функциями, как поддержка многопоточности, статические утверждения и анонимные структуры.

Чтобы включить C99 в GCC, вы можете использовать опцию -std=c99 при компиляции кода. Например, вы можете запустить gcc -std=c99 filename.c для компиляции исходного файла с именем filename.c в соответствии со стандартом C99.

Включение C11 в GCC аналогично включению C99. Вы можете использовать опцию -std=c11 при компиляции кода. Например, вы можете запустить gcc -std=c11 filename.c, чтобы скомпилировать исходный файл с именем filename.c в соответствии со стандартом C11.

Опция -std=gnu99 в GCC включает стандарт C99 вместе с расширениями, специфичными для GNU. Эти расширения предоставляют дополнительные функции и возможности, которые могут быть недоступны для других компиляторов, кроме GCC.

Вы можете проверить версию GCC, выполнив команду gcc –version в своем терминале. Это отобразит информацию о версии вашей установки GCC.

Включение определенных стандартов C в GCC позволяет вам использовать функции и улучшения, предоставляемые этими стандартами. Это поможет вам писать более эффективный и действенный код за счет использования новейших функций и улучшений языка.

Это зависит от конкретной функции, которую вы хотите использовать. Некоторые функции, представленные в C99 и C11, могут не поддерживаться в более старых версиях GCC. Рекомендуется проверить документацию GCC или ознакомиться с примечаниями к выпуску, чтобы узнать, какие функции поддерживаются в вашей версии GCC.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *