Given a variable x of type int(which may contain a negative value) which are correct ways of doubling the value of x,barring any overflow? (a) x << 1; (b) x <<= 1; The answer is (b). Can anybody please explain why?? i thought both are correct. Thanks
Don't know what else you're looking for. Would this help?
posted 15 years ago
Oops!! Forgot the concept that the value of the left-hand operand is NOT affected by the shift operator ,whereas in the second case,x gets the new value due to extended assignment..Yeah I got it!! Thanks a lot for your examples..