long long int в C, Mac OS X, Xcode 3.2.5, ширина поля - PullRequest
3 голосов
/ 28 января 2011

В этом примере:

long long int x = 1<<38;
NSLog(@"Hello, World!, %qi", x);

Я получил «предупреждение: счетчик сдвига влево> = ширина типа» и нулевое значение для x.

Длина long long int равна 8, поэтому мы должны быть в состоянии сдвинуться вверх на 63.

Я озадачен .... И шо, скорее, поможет.

1 Ответ

14 голосов
/ 28 января 2011

Проблема не в x, а в 1, представляющем собой целое число буквенную константу.

Попробуйте вместо этого:

long long int x = 1LL << 38;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...