El not para bits no es el único operador que toma sólo un argumento. Su compañero, el not lógico (!), toma un valor true y produce un valor false. El menos unario (-) y el más unario (+) son los mismos operadores que los binarios menos y más; el compilador deduce qué uso se le pretende dar por el modo en el que se escribe la expresión. Por ejemplo, la sentencia:
x = -a;
tiene un significado obvio. El compilador puede deducir:
x = a * -b;
pero el lector se puede confundir, de modo que es más seguro escribir:
x = a * (-b);
El menos unario produce el valor negativo. El más unario ofrece simetría con el menos unario, aunque en realidad no hace nada.
Los operadores de incremento y decremento (++ y --) se comentaron ya en este capítulo. Son los únicos operadores, además de los que involucran asignación, que tienen efectos laterales. Estos operadores incrementan o decrementan la variable en una unidad, aunque «unidad» puede tener diferentes significados dependiendo del tipo de dato - esto es especialmente importante en el caso de los punteros.
Los últimos operadores unarios son dirección-de (&), indirección (* y ->), los operadores de moldeado en C y C++, y new y delete en C++. La dirección-de y la indirección se utilizan con los punteros, descritos en este capítulo. El moldeado se describe más adelante en este capítulo, y new y delete se introducen en el Capítulo 4.