В чем разница между подписанным и обычным коротким

В чем разница между подписанным и обычным коротким в c ++? Диапазон отличается?

1

Решение

short является signed по умолчанию, поэтому нет никакой разницы.

2

Другие решения

Имена signed short int, signed short, short int а также short являются синонимами и означают один и тот же тип в C ++.

3

Целые числа подписаны по умолчанию в C ++, что IMO приносит существование signed ключевое слово в вопрос. Технически это избыточно, может быть, оно вносит определенный вклад, но вряд ли кто-то использует его в производстве. Все знают, что целые числа подписаны по умолчанию. Я, честно говоря, не помню, когда в последний раз видел signed в производственном коде.

Что касается поплавков и двойников — они вообще не могут быть без знака, они всегда подписаны.

В этом отношении синтаксис C ++ немного избыточен, по крайней мере, IMO. Существует несколько способов сказать одно и то же, например, signed short int, signed short, short int а также short и то, что вы говорите, может зависеть от платформы или даже от компилятора.

Фреймворки, такие как Qt, например, объявляют свои собственные соглашения, которые являются более короткими и информативными, как, например:

quint8, quint16, quint32, quint64 — все беззнаковые целые числа с числом, указывающим размер в битах, в той же логике:

qint8, qint16, qint32, qint64 являются целыми числами со знаком с соответствующей шириной в битах.

uint по крайней мере для меня гораздо предпочтительнее unsigned или же unsigned intв той же логике у вас также есть ushort что предпочтительнее unsigned short int, Существует также uchar чтобы завершить короткую трудную семью.

0
По вопросам рекламы [email protected]