MISRA C++:2008 Rule 2-13-3

Суффикс "U" должен быть применен ко всем восьмеричным или шестнадцатеричным целочисленным литералам типа без знака

Описание

Примечание

Используйте Bug Finder вместо Code Prover для проверки правил кодирования. Поддержка кодирования правил, регистрируясь в Code Prover будет удалена в будущем релизе. См. Вопросы совместимости.

Управляйте определением

Суффикс "U" должен быть применен ко всем восьмеричным или шестнадцатеричным целочисленным литералам типа без знака.

Объяснение

Со знаком из константы определяется из:

  • Значение константы.

  • Основа константы: восьмеричный, десятичный или шестнадцатеричный.

  • Размер различных типов.

  • Любые суффиксы используются.

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

Поиск и устранение проблем

Если вы ожидаете нарушение правила, но не видите его, относитесь, чтобы Диагностировать, Почему Кодирующие Стандартные Нарушения Не Появляются как ожидалось.

Проверяйте информацию

Группа: лексические соглашения
Категория: необходимый

Вопросы совместимости

развернуть все

Не рекомендуемый запуск в R2021b

Введенный в R2013b