есть char ведь может быть как signed, так и unsigned, однако стандарт ничего не говорит про signed char и говорит просто char
https://eel.is/c++draft/basic.lval#11.3
на сппреф ясно написано что чаром ок
С каких пор цппреф является стандартом?
впрочем по ссылке тоже написано
Логично сделать вывод что да, является
из чего такой вывод?
из того, что в стандарте явно перечислены типы, с которыми не UB - и signed char в них не входит
Там ясно написано, что всё хорошо для char и unsigned char, про signed char я не вижу ни слова
При таком подходе следовало бы оставить только unsigned char
ок, я подумал про char. Тогда да, является скорее всего плтому что там перечислены конкретные типы которые ок
В общем, по-моему, очередная бага стандарта
А char является синонимом одного из двух, signed char или unsigned char, причем чего - не известно. Поэтому не то чтобы все три типа были эквивалентны, но как бы типа того.
То есть то, что утверждается про char, одновременно утверждается и про один из типов (signed char, unsigned char), но про какой - неизвестно.
Ты для начала поясни, что ты спросил, что чем должно являться?
Как нет то?
В списке char, signed char и unsigned char в точности три разных типа
Это да. Согласен. Синоним тут не то слово.
У них одинаковые свойства, да. Ну вот, и в списке для чтения object representation только два из них - char и unsigned char, конкретно signed char не в списке, signed char это самый обычный целочисленный тип
ну там конкретно разделяется "репрезентация" и "тип"
signed char не является алиасящим типом
Обсуждают сегодня