ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
22 декабря
1037338 Топик полностью
AlexBi (17.09.2020 18:22, просмотров: 481) ответил SciFi на Это интересно, но здесь даже нет преобразования. Оператор ! -- это сравнение с нулём, и если аргумент целое, плавучка или указатель, всё это работает немного по-разному. У целого -- простое сравнение с нулём, у плавучки -- сравнение с 0.0 (там уже может играть режим округления и т.п.), у указателя -- сравнение с нулевым указателем (который на какой-нибудь экзотической архитектуре может иметь ненулевое двоичное представление).
Вроде бы есть, даже два. Оператор ! работает только с типом bool, поэтому то, что ему подсунули, сперва должно превратиться в bool. Для целых и плавучки это сравнение с нулем, и т.д. После выполнения (!) получается bool, который, в описываемом примере, превращается в int.