Результаты поиска по запросу "integer-promotion"

1 ответ

В Java почему префикс приращения или декремента оператор не требует приведения в случае байта

Предположим, у меня есть следующий фрагмент кода

4 ответа

Почему целочисленные типы повышаются во время добавления в C?

2 ответа

Bitshift и целочисленное продвижение?

Обычно C требует, чтобы операнды бинарного оператора были переведены в тип операнда более высокого ранга. Это можно использовать, чтобы избежать заполнения к...

ТОП публикаций

1 ответ

Йода Условия и целочисленное продвижение

При сравнении типа больше чем

5 ответов

Если char c = 0x80, почему printf («% d \ n», c << 1) выдает -256?

2 ответа

точнее, CAM означает абстрактную семантику, определенную стандартом.

0 ответов

 не должно иметь typedef для него.

давнего времени я считал, что решение большинства разработчиков и поставщиков систем должно быть простым.int 32-битные даже на 64-битных машинах своего рода целесообразные бородавки. С современными типами фиксированных размеров C99 (int32_t а ...

2 ответа

Всегда ли unsigned char переводится в int?

Предположим следующее: unsigned char foo = 3; unsigned char bar = 5; unsigned int shmoo = foo + bar; Находятсяfoo а такжеbar значения гарантированно будут повышены доint значения для оценки выраженияfoo + bar - или реализации разрешено ...

0 ответов

@Roman - см. Отредактированный ответ.

лал простую программу и скомпилировал ее с помощью GCC 4.4 / 4.5 следующим образом: int main () { char u = 10; char x = 'x'; char i = u + x; return 0; }g ++ -c -Wconversion a.cpp И у меня есть следующее: a.cpp: In function ‘int main()’: ...

2 ответа

ИМХО это просто добавляет накладных расходов, но мнения могут отличаться ...

ужно устранить предупреждения gcc -Wconversion. Например typedef unsigned short uint16_t; uint16_t a = 1; uint16_t b = 2; b += a;дает warning: conversion to 'uint16_t {aka short unsigned int}' from 'int' may alter its value [-Wconversion] b += ...