AVR C++ uint32_t weird behaviour

Viewed 409
uint32_t a = 65536;
uint32_t b = 1 << 16;

Why is a != b here, but

uint32_t a = 65536;
uint32_t b = 65536;

here a == b although it should technically be the same?

I'm using CLion as an IDE and CMake 3.7.1 with Arduino CMake.

2 Answers
Related