«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему тип `int 'не может быть использован по умолчанию для супер больших целочисленных константов?

Почему тип `int 'не может быть использован по умолчанию для супер больших целочисленных константов?

Опубликовано в 2025-04-13
Просматривать:143

Why Do Excessively Large Integer Literals in C and C   Sometimes Not Default to `int`?

Integer Literals: не всегда int по умолчанию

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

переполнение и продвижение

, когда может привести целого числа литература превышает диапазон int (обычно 32-битный), неопределенное поведение (UB). Однако в некоторых случаях компилятор может автоматически продвигать буквальный к более крупному типу, такой как Long Int (который обычно составляет 64-бит).

стандартные спецификации

оба C и C и C стандартов регулируют пропаганду интетгеров к соответствующим типам. &&]

  • c: раздел [lex.icon] ¶2 Стандартный Specifies int int int int int int int int int int int int int int int int int int int int int Необходимый.
  • пример
рассмотрим целочисленный буквальный 10000000000. В среде C это будет интерпретироваться как длинный инт. Однако, если используемый компилятор является 32-разрядным компилятором, это может привести к ошибке компиляции из-за того, что букваль слишком большой для доступных целых типов.

]

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3