Hola:
He reproducido tu código y me da los resultados correctos:
Código C++:
Ver original#include <iostream>
using namespace std;
int main()
{
for(int x=0; x<12; x++)
{
long long int num = 7L << (int)(3 * x);
cout<<"Num: "<<num<<endl;
}
return 0;
}
Num: 7
Num: 56
Num: 448
Num: 3584
Num: 28672
Num: 229376
Num: 1835008
Num: 14680064
Num: 117440512
Num: 939524096
Num: 7516192768
Num: 60129542144
Se me ocurre que el problema sea del SO o compilador, que sean de 32 bits (he hecho la prueba en CodeBlocks bajo Linux Mint ambos de 64 bits) , y eso limite el tamaño máximo de la variable, pero ya me pierdo ahí.