Understanding this return statement code

return((v<0)?(long)(v-0.5):(long)(v+0.5));

It looks like an if then else statement.
The question mark I don’t understand, is this just short cut for the if?

Ternary Operator

Pretty much. Google C++ ternary operator.