Saltar al contenido

~ es NOT bit a bit en código y NOT lógico en algunos libros

~ es el complemento bit a bit en C, Java, JavaScript y Python, donde ~1 es -2, y el NOT lógico en algunos libros de lógica. El analizador rechaza ~A y ofrece NOT, ! o ¬.

El diagnóstico registrado abajo dice: ~ no es un operador admitido; usa NOT, ! o ¬ para la negación. En la familia de C la tilde invierte todos los bits de un entero, así que ~1 es -2 y ~0 es -1, y los dos cuentan como verdadero; quien escribe if (~flag) ha escrito una condición que siempre es verdadera. En Python ~True es también -2, porque bool es una subclase de int.

En los textos de lógica la tilde es un signo de negación honesto, y por eso precisamente es peligrosa aquí: una fórmula copiada de un libro y una condición copiada de un programa usan el mismo carácter para operaciones distintas. Las grafías de la negación en el motor son la palabra NOT, el ! de programación, el ¬ matemático y la prima A' del álgebra, y las cuatro se imprimen unas a otras.

El mismo razonamiento rechaza ^ y los & y | simples: cada uno tiene un significado bit a bit en código que cambiaría en silencio la función de una regla. La página de símbolos enumera todas las grafías aceptadas y rechazadas con el mensaje del propio analizador.

Lo que dice el analizador

EscribisteCódigoPor qué se rechazaCorrección ofrecida
~Aunsupported-operator`~` is not a supported operator. Use `NOT`, `!`, or `¬` for negation.Replace with NOT

El error habitual

Traducir ~A de un libro como NOT A a mano y ~flag de C de la misma manera. Lo primero es correcto; lo segundo es un complemento bit a bit que es verdadero para todos los valores salvo -1, y el motor rechaza las dos grafías para que compruebes cuál tienes.

Preguntas

¿Por qué se acepta ! y ~ no?

! es el NOT lógico en todos los lenguajes de la familia de C, con el mismo significado que el NOT del motor. ~ es bit a bit allí y lógico en los libros, así que una lectura única sería incorrecta para una de sus fuentes.

¿Se acepta ¬?

Sí, como grafía matemática, junto con la prima A' de la notación de álgebra.

Relacionado

Herramientas

Véase también

Errores comunes

Generado a partir del motor de Tangibool, semántica tangibool-semantics/1, motor 1.0.0, compilación . Cada tabla, mapa, simplificación y veredicto de estas páginas lo calculó el motor de Tangibool al compilar el sitio, y cada afirmación la volvió a comprobar el mismo verificador exacto que usa la app. Los límites se indican donde aplican. © 2026 Foreranger LTD.