I was tinkering with a C++ program and I stumbled upon a really strange thing.
This code outputs 0:
#include<iostream>
using namespace std;
int main(){
    cout<<(1<<(32LL));
}
while this one outputs 1:
#include<iostream>
using namespace std;
int main(){
    long long int a=32;
    cout<<(1<<a);
}
Why is this?
