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

Почему C и C ++ способствуют «короткому» до `int` во время арифметических операций?

Опубликовано в 2025-03-12
Просматривать:567

Why Do C and C   Promote `short` to `int` During Arithmetic Operations?

Почему преобразовать короткое в int для арифметических операций в C и C?

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

фон по целочисленным рекламным акциям

в C, целочисленные рекламные акции были введены, чтобы определить, как типы данных были автоматически преобразованы в эксплуатации. Обычные арифметические преобразования, применяемые к арифметическим выражениям, включают в себя продвижение короткого до INT, если оно может представлять все значения коротких. В противном случае, он продвигается в Unsigned Int.

обоснование для более широких расчетов

в соответствии со стандартным обоснованием C, разрешающим расчеты в более широких типах, чем необходимо, было введено в:

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

значение для коротких опернот

. Эта акция обычно преобразует его в Int, которая обеспечивает более широкий диапазон значений и обеспечивает согласованные типы данных для операций.

пример

рассмотрим следующий фрагмент кода:

short s = 1, t = 2; auto x = s t;

здесь, s и t - короткие типы. Тем не менее, результат их добавления хранится в X, который будет иметь тип Int. Это согласуется с обычными арифметическими конверсиями и целочисленными акциями, определенными в стандарте C.
]
Последний учебник Более>

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

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

Copyright© 2022 湘ICP备2022001581号-3