fastest way to negate a number

Alexandre picture Alexandre · Feb 27, 2013 · Viewed 65.7k times · Source

I was thinking this morning here, what would be the fastest way to reverse a number of positive to negative and from negative to positive, of course, the simplest way might be:

int a = 10;
a = a*(-1);

or

int a = 10;
a = -a;

But then, I thought, I take that to do this, using commands shift and pointers ... That really would be possible to change the sign of a value, using commands shift operators and memory?

Answer

Armen Tsirunyan picture Armen Tsirunyan · Feb 27, 2013

Use something that is readable, such as

a *= -1;

or

a = -a;

Leave the rest to the optimizer.