MISRA (первоначально аббревиатура Motor Industry Software Reliability Association) - это организация, которая опубликовала рекомендации по кодированию под названием MISRA-C и MISRA-C++. Каждый документ представляет собой набор правил, направленных на создание более безопасного подмножества соответствующего языка.

Домашняя страница MISRA

Полные названия документов:

  • Рекомендации по использованию языка C в критических системах
  • Рекомендации по использованию языка C++ в критических системах

Первоначально написано специально для автомобильной промышленности, теперь более широко используется, в том числе в аэрокосмической и оборонной промышленности.

Существуют три версии рекомендаций C:

  • MISRA-C:1998 (неофициально MISRA C1). Первый выпуск. Совместим только с C90.
  • MISRA-C:2004 (неофициально MISRA C2). Совместим только с C90.
  • MISRA-C:2012 (неофициально MISRA C3). Выпущено на Embedded World 2013. Совместимо с C90 и C99.

Примечание. Более поздние версии языкового стандарта (например, C11) могут использоваться с отклонением.

MISRA-C:2012 является действующим отраслевым стандартом де-факто и рекомендованным к использованию. Старые по-прежнему доступны, но не рекомендуются для новых проектов.

MISRA-C++ существует только в текущей версии MISRA-C++:2008.


Использование тега: используйте этот тег для всех вопросов, связанных с MISRA-C и MISRA-C++. Он всегда должен использоваться вместе с тегом c или C++.

Когда вы спрашиваете о правилах MISRA, укажите, какую именно версию вы используете: C:1998, C:2004, C:2012 или C++:2008.