The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Microsoft открыл CHERIoT, аппаратное решение для повышения б..."
Отправлено RM, 04-Янв-24 23:25 
>>Диды (K&R) говорили что просто int может быть по умолчанию или signed или unsigned.
> Мощное заявление, пруфов конечно же не будет.

Да, память меня подвела, признаю, распространил я в своей голове поведение char на все int (целыe).

Я, когда все это читал, не захотел зазубривать всякие тонкости преобразований по умолчанию и потом при написании кода это еще крутить в голове до/вместо компилятора.
Поэтому вывел для себя это правило - писать как если бы signed или unsigned по умолчанию был не определен.
Вот если уже без конкретного подозрительного преобразования не обойтись - то представлять как процу/компилятору это легче сделать - он скорее всего так и сделает. Или просто смотреть нагенерённый асм.

А вообще там интересна, главная фраза
"The int types all represent signed values unless specified otherwise."
Specified видимо стоит читать как "не написано рядом unsigned спецификатора"
Хотя можно было бы в порядке троллинга и поспорить что мол не специфицировано мануалом на проц/компилятор.

НО, как всегда есть исключение - битовые поля.
Вот тама уже так как я написал.
"A field member (which need not have a declarator and thus may be unnamed) has type int, unsigned int, or signed int, and is interpreted as an object of integral type of the specified length in bits; whether an int field is treated as signed is implementation-dependent."
Ну и "Fields may be declared only as ints; for portability, specify signed or unsigned explicitly"

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру