Разница между логическим и побитовым AND в компьютерных языках заключается в том, что логический оператор AND (&&) работает с логическими выражениями (либо 1, либо 0) и возвращает логическое значение, а побитовые операторы (например, оператор &) работают с целыми значениями (short, int, unsigned, char, bool, unsigned char, long) и возвращают целочисленное значение. 1
Например, в C++ результатом выражения «2 && 1» (логическое И) является булево значение true, а результатом выражения «2 & 1» (побитовое И) — целое значение 0. 3
В некоторых языках программирования названия операторов, соответствующих логическим и побитовым логическим операциям, похожи. 3 В таких языках необходимо внимательно следить за использованием логических и побитовых операций, перемешивание которых может привести к ошибкам. 3