Каково фактическое использование ключевого слова "signed"?
Я знаю, что целые числа без знака являются только положительными числами (и 0) и могут иметь двойное значение по сравнению с обычным int. Есть ли разница между
int variable = 12;
и:
signed int variable = 12;
когда и почему вы должны использовать ключевое слово со знаком?
4 ответа:
существует только один экземпляр, где вы можете использовать
signed
ключевое слово.signed char
всегда отличается от типа "обычный"char
, который может быть подписанным или беззнаковым типом в зависимости от реализации.в C++14 3.9.1/1 говорит:
это реализация-определяется ли a
в случае
int
, нет никакой разницы. Это имеет значение только сchar
, потому что
- не определено ли
char
подписывается или не подписывается, иchar
,signed char
иunsigned char
есть три различных типа в любом случае.так что вы должны использовать
signed
если вам нуженsigned char
(что, вероятно, редко). Кроме этого, я не могу придумать причину.
signed
- Это целочисленный тип по умолчанию. Так что нет, нет никакой разницы в Примере, который вы дали. Разница есть только в случаеchar
.источник: Ссылка На C++