Новый стандарт ISO C — C11


ISO только что опубликовала последний стандарт языка C, ранее известный как C1X, а теперь он был опубликован как C11. Это не следует путать с C++11, который является недавним обновлением до языка C++.

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

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

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

Одна из проблем, которая, по-видимому, раздражает сообщество C, — это высокая цена, установленная для загрузки нового стандарта в формате PDF. ИСО финансируется многими правительствами и использует свободное время многих финансируемых правительством ученых, но по-прежнему считает, что имеет право взимать около 300 долларов за загрузку PDF-файла. Стоит отметить, что проект стандарта по-прежнему можно прочитать бесплатно.

Также стоит отметить, что большинство «новых» функций уже некоторое время поддерживаются широко используемыми компиляторами языка Си. Например, GCC 4.6 имеет экспериментальную поддержку некоторых новых функций. 


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