Можно создать дубликат:
Double Negation in C++ codeЧто значит !! в C - и зачем он нужен?
Во время чтения одного кода я прочитал:
flush = ! !(flags & GST_SEEK_FLAG_FLUSH);
Я не получаю то, что это значит !!
здесь. Что делает это предложение?
EDIT:
Я получил его сво двойной отрицательный. трюк для преобразования данных non-bool в bool
Но в чем же это необходимость? Здесь flush - bool, тогда, если вы назначите любой ненулевой элемент для bool, он будет обрабатывать как 1, так и нулевой элемент как 0, так что это полезно?
Возможно, кто-то путал логическое NOT ('!') С побитовым NOT ('~')? –
но что нужно от этого ??? здесь flush is bool, тогда, если вы назначите любой ненулевой элемент для bool, он будет обрабатывать как 1 и zero iteam как 0, так что это полезно? –
@ Mr.32 Используется для проверки того, установлен ли бит 'GST_SEEK_FLAGS_FLUSH' в переменной' flags'. –