В чем разница между подписанным и нормальным коротким значением в C++? Является ли диапазон другим?В чем разница между подписанным и нормальным коротким
ответ
short
- signed
по умолчанию, поэтому нет разницы.
Имена signed short int
, signed short
, short int
short
и являются synonymes и означают одинаковый тип в C++.
Обратите внимание, что целые типы 'signed char' и' char' являются _not_ одинаковыми. «Char» либо то же самое, что «unsigned char», либо как «подписанный символ», вы не знаете, какой из них (ОК, ОК, я соврал, это зависит от вашей архитектуры). – vonbrand
@vonbrand Да и с 'wchar_t' или' float' можно даже не квалифицировать его с помощью 'signed', но это может зайти слишком далеко от вопроса OP. –
В C++ по умолчанию подписаны целые числа, которые ИМО приносит существование ключевого слова 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
, чтобы завершить короткоживущую семью.
Дополнительные ресурсы: http://en.cppreference.com/w/cpp/types/integer – Zeta
'signed' иногда используется для бит-упакованных членов structs и для' char', поэтому ключевое слово будет оставаться полезным навсегда на языке. –
- 1. В чем разница между подписанным и неподписанным добавлением в vhdl?
- 2. Разница между подписанным и неподписанным в MySQL?
- 3. В чем разница между статическим классом и нормальным классом?
- 4. В чем разница между продолжениями и нормальным вызовом?
- 5. В чем разница между пониманием списка Python и нормальным циклом?
- 6. В чем разница между IOT и нормальным индексом?
- 7. В чем разница между NSArray и нормальным массивом?
- 8. В чем разница между использованием пула потоков и нормальным потоком?
- 9. Разница между длинным и коротким прыжком (x86)
- 10. Разница между нормальным интерфейсом и интерфейсом MBean
- 11. Разница между неподписанным и подписанным указателем int
- 12. Разница между «сертифицированным» и «подписанным» для PDF
- 13. Разница между нормальным AJAX и длительным опросом
- 14. Python разница между randn и нормальным
- 15. Разница между упакованным и нормальным типом данных
- 16. Разница между нормальным конструктором и мутатором? Java
- 17. Разница между JavaBean, POJO и нормальным классом?
- 18. Разница между обратным ajax и нормальным ajax
- 19. Разница между динамическим массивом и нормальным массивом
- 20. Разница между нормальным php и скомпилированным php?
- 21. Разница между нормальным указателем и указателем const в c
- 22. JAVA: В чем разница между логическим И/ИЛИ и коротким замыканием И/ИЛИ?
- 23. В чем разница между «и»?
- 24. В чем разница между `{}` и `[]`?
- 25. В чем разница между == и ===?
- 26. В чем разница между «+» и «\ +»?
- 27. В чем разница между + = и = +?
- 28. В чем разница между/* ... */и/** ... */
- 29. В чем разница между: и +:
- 30. В чем разница между $ {} и # {}
Исправьте меня, если я ошибаюсь, но «нормальный» не является ключевым словом C++. – 2013-03-10 12:48:35
«нормальный короткий» он имеет значение «короткий», без какого-либо «(un) подписанного» спецификатора. – cubuspl42